wie kann ich eine Zeichenkette nach einer bestimmten Teilzeichenkette erhalten.
Zum Beispiel möchte ich die Zeichenkette nach "world"
in my_string="hello python world , i'm a beginner "
erhalten.
Am einfachsten ist es wahrscheinlich, wenn Sie Ihr Zielwort aufteilen
my_string="hello python world , i'm a beginner "
print my_string.split("world",1)[1]
split nimmt das Wort (oder Zeichen), an dem gesplittet werden soll, und optional eine Grenze für die Anzahl der Splits.
In diesem Beispiel wird auf "Welt" aufgeteilt und auf nur einen Split begrenzt.
s1 = "hello python world , i'm a beginner "
s2 = "world"
print s1[s1.index(s2) + len(s2):]
Wenn Sie den Fall behandeln wollen, dass s2
nicht in s1
vorhanden ist, dann verwenden Sie s1.find(s2)
anstelle von index
. Wenn der Rueckgabewert dieses Aufrufs -1
ist, dann ist s2
nicht in s1
.
Wenn Sie dies mit einem Regex machen wollen, können Sie einfach eine [nicht-erfassende Gruppe] (http://www.regular-expressions.info/brackets.html) verwenden, um das Wort "world" zu erhalten und dann alles danach zu erfassen, etwa so
(?:world).*
Der Beispielstring wird [hier] getestet (http://rubular.com/r/u1k4Mkqbvp)