Extrahieren Sie Wörter zwischen zwei Wörtern mit regex
Ich habe einen string:
8 Nächte, die Sie doodle poodle
Ich abrufen wollen jedes Ding zwischen nights
und poodle
, also im obigen Beispiel sollte die Ausgabe you doodle
.
Bin ich unter den unten angegebenen regex. Kann bitte jemand darauf hinweisen, was ich möglicherweise falsch mache?
if (preg_match("nights\s(.*)\spoodle", "8 nights you doodle poodle", $matches1)) {
echo $matches1[0]."<br />";
}
Riecht viel zu viel, wie Hausaufgaben. Gehen und lernen, regex. Ja ich weiß es ist schwer, aber wenn man einmal Begriffen hat, was all diese seltsamen match Saiten sind über die besseren von Sie werden als Programmierer.
Hausaufgaben-Fragen sind ok, solange Sie gekennzeichnet sind
Wenn es war wäre, wäre ich nicht gepostet meine Antwort.
deine Antwort ist Müll sowieso.
ja, das war schon ziemlich lame
Hausaufgaben-Fragen sind ok, solange Sie gekennzeichnet sind
homework
.Wenn es war wäre, wäre ich nicht gepostet meine Antwort.
deine Antwort ist Müll sowieso.
ja, das war schon ziemlich lame
InformationsquelleAutor user1038814 | 2011-11-10
Du musst angemeldet sein, um einen Kommentar abzugeben.
Du bist in der Nähe, aber greifen Sie auf die falsche index auf
$matches1
.$matches1[0]
zurück die Zeichenfolge, die abgestimmt in preg_match();Versuchen
$matches1[1]
;Außerdem müssen Sie schließen Sie die regex in
/
Zeichen;Ausgabe
InformationsquelleAutor maček
Möchten Sie wahrscheinlich so etwas wie dieses
Check-out rubular.com testen Sie Ihre regulären Ausdrücke. Hier ist eine weitere relevante Frage:
Mit regex, match string zwischen zwei Saiten, während ohne Saiten
InformationsquelleAutor David Ryder