Extrahieren Spiele von php regex
In perl regex können wir extrahieren die übereinstimmenden Variablen, ex unten.
# extract hours, minutes, seconds
$time =~ /(\d\d):(\d\d):(\d\d)/; # match hh:mm:ss format
$hours = $1;
$minutes = $2;
$seconds = $3;
Wie man dies in php?
$subject = "E:[email protected] I:100955";
$pattern = "/^E:/";
if (preg_match($pattern, $subject)) {
echo "Yes, A Match";
}
Extrahieren der E-Mail von dort aus? (Wir können es explodieren, und es bekommen...aber würde gerne eine Methode, um bekommen es direkt über regex)?
InformationsquelleAutor Natkeeran | 2009-09-29
Du musst angemeldet sein, um einen Kommentar abzugeben.
Versuchen mithilfe von named subpattern syntax von preg_match:
Ausgabe:
InformationsquelleAutor Chris Rasco
Überprüfen Sie die php - Handbuch
InformationsquelleAutor Yannick Motton
Können Sie einfach ändern Sie Ihre aktuelle regexp, um alles einzufangen, was nach dem Doppelpunkt bis zum ersten Leerzeichen:
Im Falle Sie nicht vertraut sind mit regexp
[^ ]+
bedeutet "jeder Charakter, sondern einen Raum," und es nicht erforderlich, einen Raum präsent zu sein, um zu arbeiten. Wenn aus irgendeinem Grund die Eingabe von änderungen zu "E:[email protected]" ohne die " ich:12345" bisschen, es wird immer noch funktionieren.InformationsquelleAutor Josh Davis
Verwenden Sie die matchs parameter der preg_match-Funktion wie folgt:
entspricht:
Falls der Parameter matches angegeben wurde, dann ist es gefüllt mit den Suchergebnissen. $matches[0] enthält dann den text, der auf das komplette Suchmuster ist, $matches[1] den text, der auf das erste aufgenommene eingeklammerten Teil-Suchmuster übereinstimmen und so weiter.
InformationsquelleAutor ennuikiller