8、点字符 (.)
点字符(.) 可以匹配出除了换行符以外的任意的一个字符。 注意:除换行符以外的任意的一个字符
如匹配一个以a开始,b结尾的中间">
PHP 開発における正規表現 (1)
正規表現と言えば、大学でコンパイルの原理を学んでいたときに遭遇しましたが、当時はあまり気にしていませんでした。後になってアプリを作っているうちに、これはWebサイトでもアプリでも、実はとても重要なことだということが分かりました。既製のものをネットで探したのですが、条件を満たす正規表現が書けず、とても辛いです。以下から学習を始めてください。
1、行ロケーター (^ と $)
行ロケーターは文字列を記述するのに便利です。 「^」は行の先頭を表し、「$」は行の末尾を表します
例: ^Jack は Jack で始まる文字列を表し、「Jack is a hero」は「The super man」と一致します。 is Jack"
には一致しません。例: Jack$ は Jack で終わる文字列を表し、「The super man is Jack」は
に一致します。 2. 単語区切り文字 (b,B)
単語の一部ではなく単語全体と一致させたい場合は、単語区切り文字
を使用する必要があります。例: bworkb は文字列内に work という単語が含まれていることを意味し、「I'm work hard!」は
と一致します。 例: BworkB は文字列内に work という単語が含まれていないことを意味します。頑張ってます!」 は一致しません
3. 文字クラス ([])
正規表現は case-サイズを無視したい場合は、角括弧式「[]」を使用して記述できます。一致する単語が角括弧内にある限り、一致は成功します。ただし、角括弧は 1 文字のみと一致することに注意してください。たとえば、大文字と小文字を区別しない文字列 ab と一致させたい場合、式は次のようになります: [Aa][Bb] これにより、ab
4. 文字 (|) を選択します
大文字と小文字を区別せずに文字列 ab を照合する別の方法として、選択文字 (|) を使用する方法があります。この文字は「または」として理解でき、式は次のようになります: (A|a)(B|b)5. 🎜>変数の命名規則は、文字とアンダースコアのみで始めることができます。ただし、この方法では、正規表現を使用して変数名の最初の文字と一致させたい場合は、[a,b,c,d...A,B,C,D... のように記述する必要があります。 ] これは間違いなく非常に面倒です。はい、正規表現はこの問題を解決するためにハイフン "-" を提供します。ハイフンは文字の範囲を表すことができます。たとえば、上記の例は、[a-zA-Z]
「^」は行の始まりを示し、この文字を角括弧内に置くと除外を示します。 例: [^a-zA-Z] この式は、文字またはアンダースコアで始まらない変数名に一致します。
繰り返しの文字または文字列には修飾子を使用できます。マッチングを実現するために。次の表に示すように、修飾子には主に 6 つのタイプがあります。
ドット文字 (.) は、改行文字を除く任意の文字と一致します。
注: 改行文字以外の任意の文字a で始まり b で終わり、間に 1 文字が含まれる単語と一致する場合。 ^a.b$
正規表現内のエスケープ文字PHP のエスケープ文字は似ており、すべて特殊文字 (「.」「?」「" など) を通常の文字に変換します。 IP アドレス 127.0.0.1 を例に挙げます。この形式でエスケープ文字が使用されない場合、正規表現の式結果は次のようになります。[1-9]{1,3}(.[1-9]{ 1,3}) {3} しかし、「.」は 127.0.0.1 のような文字と一致する可能性があるため、これは明らかに間違っています。今回はエスケープ文字を送信しますので、参考にしてください。 エスケープ文字を使用した正規表現は、[1-9]{1,3}(.[1-9]{1,3}){3}
10. バックスラッシュ()
(1) バックスラッシュは、次の表に示すように、一部の印刷不可能な文字を表示できます。 > (2) バックスラッシュは、次の表に示すように、事前定義された文字セットを指定することもできます:
(3) バックスラッシュ また、次の表に示すようにアサーションを定義することもできます。次の表:
後方参照は、連続する文字列または文字と一致する部分式の「メモリ」機能。
例: 2 つの連続する ab を一致させたい場合は、ab をグループとして使用し、最後に「1」を追加します。 以下のようになります。 (ab)1
一致する文字列が固定されていない場合は、正規表現として括弧内の文字列を記述することができます。複数のグループがある場合は、「1」、「2」を使用できます。 " 各グループを表すには (順序は左から右です)
例: ([a-z])(A-Z)12
数値を使用してグループを表すことに加えて、次のことができます。自分で指定することもできます。 グループ名 例:
(?P
グループを参照する場合、構文は次のとおりです:
(?P = subname)
式 ([a-z])(A-Z)12 を書き直して、これら 2 つのグループにそれぞれ名前を付け、それらを後方参照します。正規表現は次のとおりです。 >(?P
学びましょう理論的な知識はここで一緒に説明します。その他の操作については、PHP 開発のための正規表現 (2) で共有します。
>