PHP 正規表現の基本構文応用学習。
^ Start
$ End
* 0 個以上 0 個以上と一致
"ab*" 文字列 a と 0 個以上の b と一致 ("a " "ab" "abb" "abbbbbb " など)
+ は 1 つまたは複数の 1 つまたは複数に一致します
"ab+" は文字列 a と 1 つまたは複数の b で構成される文字列に一致します ("ab" "abb " "abbbbbb" など) * と * の違いそれは b
と一致しなければならないということですか? 0 または 1 と一致します
"ab?" 0 または 1 と一致します b ("a", "ab")
.*? ルールを必要としない大きな文字列と一致するために使用されます。一致せずにスキップしたい
例:
"a?b+$" は、1 または 0 a と b で終わる 1 つ以上の文字列に一致します ("b" "ab" "bbbbb " "abbbbbbb")
もちろん、次の中括弧内に制限文字数を追加することもできます
"ab{2}" a に一致する場合は、その後に 2 つの b が続く必要があります。つまり、"abb "
"ab {2,}" は、2 以上である必要がある a の後に b が続くものと一致します。 "abb" "abbb" "abbbbb"
"ab{2,5}" は、2 ~ 5 の a の後に b が続くものと一致します。 "abb" "abbb" "abbbb" "abbbbb"
ただし、2 未満の場合はこのようにすることはできません。 b "ab{,2}" は "ab{0,2}" のようにする必要があります
つまり、
* については、それが {0,} と同等であることがわかります
+ は {1,} と同等です
? {0,1} と同等
() は、
に一致するようにいくつかの文字列をリンクします。 "a(bc)*" は、a の後に 0 bc 以上が続く bc "a" "abc" " に一致します。 abcbc" "abcbcbc" など
| この文字は OR 演算と同等です
"hi|hello" は hi または hello を含む文字列と一致します
"(b| cd)ef" は bef または hello を含む文字列と一致しますcdef
"(a|c)*d" は、 "d" "ad" "cd" "aab" "ccd" "aaaaaaad" "cccccccd"
を含む文字列と一致します。すべての単一文字を表すことができます。
"a.[0-9]" は、a の後に文字列が続き、最後に数値 "aj9" "a<8" と一致します。中央は 1 文字である限り、 OK
"^.{3}$" "asd" は、"kjl" のように 3 つ以上の単一文字で始まります。
[] この記号に含まれる内容単一の文字のみに一致します
「[ab]」は、単一の a または単一の b のみに一致することを意味し、「a|b」と同等です
「[a-z]」は、26 個の小文字と一致することを意味します
"^[a-zA-Z]" は文字で始まる文字列に一致します
"[0-9]%" は x% を含む文字列に一致します
"、[a-zA-Z0-9]$" は a に一致しますカンマで終わり、その後に数字または文字「,0」「,a」などの文字列
PHP よく使用される代替記号
## または // は区切り文字を表し、単一の / はエスケープ文字を表します
s は空白の一致を表します
d は数字と一致します
w はアンダースコアを含む任意の単語文字と一致します
online マスターによって要約された比較的完全な文法。