Heim > Artikel > Backend-Entwicklung > Detaillierte Erklärung von Metazeichen in regulären Ausdrücken in PHP (Codebeispiele)
1. Die Definition von Metazeichen in regulären Ausdrücken verstehen
2. Die Verwendung von Metazeichen in grundlegenden regulären Ausdrücken beherrschen
Zeichen mit besonderer Bedeutung in regulären Ausdrücken werden als Metazeichen bezeichnet:
, ^, $, [, ], |, (,), ?*, +, {, }
Zusammenfassung:
1
2. ^ stellt die Startposition des Ziels dar (oder den Anfang der Zeile im Mehrzeilenmodus)
3. $ stellt die Endposition des Ziels dar (oder im Mehrzeilenmodus das Ende). der Zeile)
4. Standardmäßig entspricht es jedem Zeichen außer dem Zeilenumbruchzeichen
5 [ steht für das Definitionsanfangszeichen
6, ] steht für das Definitionsendzeichen
7, | optionaler Zweig
8, (zeigt das Start-Tag einer Untergruppe
9,) gibt das End-Tag einer Untergruppe
10, ?: als Quantifizierer an, der 0 oder 1 Übereinstimmungen anzeigt.
11. *: Als Quantor bedeutet es 0 oder mehr Treffer
12: Als Quantor bedeutet es 1 oder mehr Treffer
13
14, }: Gibt das End-Tag von benutzerdefinierten Quantifizierern an
Die folgenden Codes werden einzeln verwendet, um jede Zusammenfassung zu üben, was das Verständnis fördern kann
1 für Escape Der spezifische Code des Zeichens
lautet wie folgt:
<?php $p = "/A\/B\/C/";//包含A/B/C字符串 $str = "A/B/C"; if (preg_match($p, $str,$math)) { echo '该字符串符合这个规则:/A\/B\/C/<br/>'; echo "匹配结果为:"; print_r($math); }else{ echo '该字符串不符合这个规则:/A\/B\/C/'; } ?>
Das laufende Ergebnis ist:
Die Zeichenfolge entspricht dieser Regel: / A/B/C/
Das Matching-Ergebnis ist: Array ([0] => A/B/C)
2 ^ repräsentiert die Startposition des Ziels (oder des Anfang der Zeile im Mehrzeilenmodus)
Der spezifische Code lautet wie folgt:
<?php $p = "/^A/m";//以A开始 $str = "Abc \nAcc \nAdd"; if (preg_match_all($p, $str,$math)) { echo '该字符串符合这个规则:<br/>'; echo "匹配结果为:"; print_r($math); }else{ echo '该字符串不符合这个规则'; } ?>
Das laufende Ergebnis lautet wie folgt:
Die Zeichenfolge entspricht diese Regel:
Das passende Ergebnis ist: Array ( [0] => Array ( [0] => A [1] => A [2] => A ) )
3. $ stellt die Endposition des Ziels (oder der Linie im Mehrzeilenmodus) dar.
Der spezifische Code lautet wie folgt:
<?php $p = "/A$/m";//以A结尾的字符串 $str = "nihao A\n this is a word A"; if (preg_match_all($p, $str,$math)) { echo '该字符串符合这个规则:<br/>'; echo "匹配结果为:"; print_r($math); }else{ echo '该字符串不符合这个规则'; } ?>
Das laufende Ergebnis ist:
Die Zeichenfolge entspricht dieser Regel:
Das übereinstimmende Ergebnis ist: Array ( [0 ] => Array ( [0] => A [1] => A ) )
4. Standardmäßig entspricht es jedem Zeichen außer Zeilenumbrüchen
Der spezifische Code lautet wie folgt:
<?php $p = "/A.B/";//查找A(任何字符除了换行符外)B的字符串 $str = "A,B A-B A\nB"; if (preg_match_all($p, $str,$math)) { echo '该字符串符合这个规则<br/>'; echo "匹配结果为:"; print_r($math); }else{ echo '该字符串不符合这个规则'; } ?>
Das laufende Ergebnis ist:
Die Zeichenfolge entspricht dieser Regel
Das übereinstimmende Ergebnis ist: Array ( [0] => Array ( [0] => A,B [1] => A-B ) )
5. [ stellt das Definitionsstartzeichen dar
6 ] stellt das Definitionsendzeichen dar
Der spezifische Code lautet wie folgt:
<?php $p = "/[0-9]A/";//包含小于9的一个数字和A $str = "0A 1A 2A SA"; if (preg_match_all($p, $str,$math)) { echo '该字符串符合这个规则<br/>'; echo "匹配结果为:"; print_r($math); }else{ echo '该字符串不符合这个规则'; } ?>
Der Lauf Ergebnis ist:
Die Zeichenfolge entspricht dieser Regel
Das übereinstimmende Ergebnis ist: Array ( [0] => Array ( [0] => 0A [1] => 1A [2] => 2A ) )
7. Der spezifische Code lautet wie folgt:
<?php $p = "/[0-9]A|[0-9]B/";//查找小于9的一个数字和A相连的字符串或者查找 //小于9的一个数字和B相连的字符串 $str = "0A 1A 2B 3C"; if (preg_match_all($p, $str,$math)) { echo '该字符串符合这个规则<br/>'; echo "匹配结果为:"; print_r($math); }else{ echo '该字符串不符合这个规则'; } ?>
Das laufende Ergebnis ist:
Die Zeichenfolge entspricht dieser RegelDas übereinstimmende Ergebnis ist: Array ( [0] => Array ( [0] => 0A [1] => 1A [2] => 2B ) )8. ( Stellt die Startmarkierung einer Untergruppe dar
9. ) Stellt die Startmarkierung eines Untergruppen-End-Tags dar
rrreeDas laufende Ergebnis ist:
Die Zeichenfolge entspricht dieser RegelDas übereinstimmende Ergebnis ist: Array ( [0] => Array ( [0] => ; 1-3 [1] => 2-4 ) [1] => Array ( [0] => 1 [1] => 2 ) [2] => Array ( [0] => 3 [1] => ; 4 ) )10 ?: Als Quantor bedeutet es 0 oder 1 Übereinstimmungen.
Der spezifische Code lautet wie folgt:
<?php $p = "/([0-9])-([0-9])/"; $str = "1-3 2-4 3-s"; if (preg_match_all($p, $str,$math)) { echo '该字符串符合这个规则<br/>'; echo "匹配结果为:"; print_r($math); }else{ echo '该字符串不符合这个规则'; } ?>
Das laufende Ergebnis lautet wie folgt:
Die Zeichenfolge entspricht dieser RegelDas Übereinstimmungsergebnis lautet: Array ( [0] => Array ( [0] => H [1] => H [2] => H ) [1] => Array ( [0] => [1] = > [2] => ; ) )11 *: Als Quantor bedeutet es 0 oder mehr Übereinstimmungen
<?php $p = "/(A[0-9])?H/";//查找H字符 因为?表示出现0或者1次 $str = "A1AH AsH BH"; if (preg_match_all($p, $str,$math)) { echo '该字符串符合这个规则<br/>'; echo "匹配结果为:"; print_r($math); }else{ echo '该字符串不符合这个规则'; } ?>
Das Operationsergebnis ist:
Diese Zeichenfolge stimmt überein. Das Übereinstimmungsergebnis dieser Regelist: Array ( [0] => Array ( [0] => H [1] => A1H [2] => A2H [ 3] => A2A2H ) [1 ] => Array ( [0] => [1] => A1 [2] => A2 [3] => A2 ) )12. +: als Quantifizierer, der eine oder mehrere Übereinstimmungen anzeigt
Der spezifische Code lautet wie folgt:
<?php $p = "/(A[0-9])*H/";//查找H字符 因为*表示出现0或者多次所以和?的结果不同 $str = "A1AH A1H A2H A2A2H"; if (preg_match_all($p, $str,$math)) { echo '该字符串符合这个规则<br/>'; echo "匹配结果为:"; print_r($math); }else{ echo '该字符串不符合这个规则'; } ?>
Das laufende Ergebnis lautet wie folgt:
Die Zeichenfolge entspricht dieser RegelDas übereinstimmende Ergebnis ist:Array ( [0] => Array ( [0] => A1H [1] => A2H [2] => A2A2H ) [1 ] => Array ( [0] => A1 [1 ] => A2 [2] => A2 ) )13
14. } : Gibt das Ende des benutzerdefinierten Quantifizierers an. Der spezifische Code für Tag
lautet wie folgt:
<?php $p = "/(A[0-9])+H/";//查找H字符 前面至少包含A和一个<9的数字相连 $str = "A1AH A1H A2H A2A2H"; if (preg_match_all($p, $str,$math)) { echo '该字符串符合这个规则<br/>'; echo "匹配结果为:"; print_r($math); }else{ echo '该字符串不符合这个规则'; } ?>
Das laufende Ergebnis ist:
Die Zeichenfolge entspricht dieser RegelDas übereinstimmende Ergebnis ist: Array ( [ 0] => Array ( [0] => dd [1] => dd [2] => dd ) )Zusammenfassung:
2. Beherrschen Sie die grundlegende Verwendung von Metazeichen in regulären Ausdrücken
Das obige ist der detaillierte Inhalt vonDetaillierte Erklärung von Metazeichen in regulären Ausdrücken in PHP (Codebeispiele). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!