Heim  >  Artikel  >  Backend-Entwicklung  >  So finden Sie einen Teilstring in Python

So finden Sie einen Teilstring in Python

伊谢尔伦
伊谢尔伦Original
2017-06-28 13:27:011681Durchsuche

In diesem Artikel werden hauptsächlich Tipps zum Finden von Teilzeichenfolgen in PythonZeichenfolgen vorgestellt. Freunde, die sie benötigen, können sich an

Wenn Sie gebeten werden, ein Programm zu schreiben, wenden ob die Zeichenfolge s2 s1 enthält. Vielleicht können Sie intuitiv den folgenden Code schreiben:

#determine whether s1 is a sub
stringof s2 def isSubstring1(s1,s2): 
    tag = False 
    len1 = len(s1) 
    len2 = len(s2) 
    for i in range(0,len2): 
        if s2[i] == s1[0]: 
            for j in range(0,len1): 
                if s2[i]==s1[j]: 
                    tag = True 
    
return tag

Aber das ist Python, wir können die find()-Methode verwenden, die mit Strings geliefert wird, also können wir das tun:

def isSubstring2(s1,s2): 
    tag = False 
    if s2.find(s1) != -1: 
        tag = True 
    return tag


Das Traurige ist, dass sich herausstellt, dass das Schlüsselwort „in“ in Python nicht nur für Listen, Grundelemente und andere Datentypen verwendet werden kann, sondern auch für Strings. Sie benötigen also nur eine Codezeile, um es hier zu tun:

def isSubstring3(s1,s2):
    return s1 in s2


Ich habe es im Nachhinein erkannt und schäme mich;-)

Das Gleiche gilt für Sie Sie möchten mehrere Elemente in einer Zeichenfolge finden. Überprüfen Sie, ob die Teilzeichenfolge vorhanden ist, und geben Sie die Position dieser Zeichenfolgen und ihr erstes Vorkommen aus:

def findSubstrings(substrings,destString):
    res =  map(lambda x:str([destString.index(x),x]),filter(lambda x:x in destString,substrings))
    if res:
        return ', '.join(list(res))
 
;-)  very cool~


UPDATE: Es spielt keine Rolle, ob dies nicht der Fall ist Wenn Sie an die letzte scheinbar komplizierte Syntax gewöhnt sind, können Sie eine prägnantere Listenanalyse verwenden:

def findSubstrings(substrings,destString):
    return ', '.join([str([destString.index(x),x]) for x in substrings if x in destString])


Das obige ist der detaillierte Inhalt vonSo finden Sie einen Teilstring in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn