Heim >Backend-Entwicklung >PHP-Tutorial >Wie extrahiere ich mit PHP mehrere in eckige Klammern eingeschlossene Textausschnitte?
Um mehrere in eckige Klammern eingeschlossene Textsegmente zu extrahieren, kann ein regulärer Ausdruck verwendet werden. So erreichen Sie dies in PHP:
Erstens ist der reguläre Ausdruck /[.*?]/ nicht für die Erfassung mehrerer Instanzen geeignet. Um stattdessen alle Zeichenfolgen mit Klammern abzugleichen, können Sie den regulären Ausdruck verwenden:
$text = '[This] is a [test] string, [eat] my [shorts].'; preg_match_all("/\[[^\]]*\]/", $text, $matches); var_dump($matches[0]);
Wenn Sie den Text innerhalb der Klammern ohne die Klammern selbst extrahieren möchten, verwenden Sie den regulären Ausdruck:
$text = '[This] is a [test] string, [eat] my [shorts].'; preg_match_all("/\[([^\]]*)\]/", $text, $matches); var_dump($matches[1]);
Alternativ ist die Verwendung des regulären Ausdrucks eine etwas langsamere, aber gleichwertige Option:
$text = '[This] is a [test] string, [eat] my [shorts].'; preg_match_all("/\[(.*?)\]/", $text, $matches); var_dump($matches[1]);
Durch die Verwendung dieser Variationen können Sie erfassen mehrere Textsegmente in eckigen Klammern, basierend auf Ihren spezifischen Anforderungen und dem String-Inhalt.
Das obige ist der detaillierte Inhalt vonWie extrahiere ich mit PHP mehrere in eckige Klammern eingeschlossene Textausschnitte?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!