Finden Worte, die nach dem Schlüsselwort in python
Ich wollen, Worte zu finden, die erscheinen, sobald ein Suchbegriff (angegeben und gesucht von mir) und drucken Sie das Ergebnis. Ich weiß, ich bin angenommen, regex zu verwenden, um es zu tun, und ich versuchte es auch, wie diese:
import re
s = "hi my name is ryan, and i am new to python and would like to learn more"
m = re.search("^name: (\w+)", s)
print m.groups()
Die Ausgabe ist nur:
"is"
Aber ich möchte all die Worte und Satzzeichen nach dem Wort "name".
InformationsquelleAutor der Frage Ryan | 2011-07-09
Du musst angemeldet sein, um einen Kommentar abzugeben.
Statt mit regexes Sie könnte nur (beispielsweise) getrennte Zeichenfolge mit
str.Trennwand(separator)
wie diese:Müssen Sie sich mit der unnötigen whitespaces getrennt, obwohl.
InformationsquelleAutor der Antwort Aufwind
Dein Beispiel funktioniert nicht, aber ich verstehe die Idee:
Dieser druckt alle nach dem "Namen" und bis zum Ende der Zeile.
InformationsquelleAutor der Antwort DominiCane
Eine andere alternative...
InformationsquelleAutor der Antwort fransua
Statt
"^name: (\w+)"
verwenden:InformationsquelleAutor der Antwort Petar Ivanov
Was Sie verwendet haben, in Bezug auf Ihre output:
Was Sie haben, zu verwenden (mit allen):
InformationsquelleAutor der Antwort Tugrul Ates
Könnte man einfach tun
Dies wird teilen Sie Ihre string und gibt eine Liste wie z.B. ['Hallo ' mein', 'ryan, und ich bin neu in python und würde gerne mehr erfahren']
je nachdem, was Sie wollen, dies zu tun kann helfen oder nicht.
InformationsquelleAutor der Antwort Hassek
Dieser Arbeit wird für u : Arbeit name\s\w+\s(\w+)
InformationsquelleAutor der Antwort Poovaraghan
InformationsquelleAutor der Antwort krish
Ohne Verwendung von regex, können Sie
strip Satzzeichen (denken Sie machen alles Einzel-Fall-auch Suchbegriff)
teilen Sie Ihren text in einzelne Wörter
finden index der gesuchte Wort
bekommen Wort aus array (
index + 1
für Wort nach,index - 1
für Wort vor )Code-snippet:
Für mehrere Ereignisse, die Sie speichern müssen mehrere Indizes:
InformationsquelleAutor der Antwort philshem