正則式の定理概念編
Python正規表現
正規表現
複雑な文字列の処理に使用するテクニック
正規表現サイト
メタ文字
メタ文字:元の文字の意味ではなく、特殊な用途に使用される文字. ^ $ * + ? { } [ ] \ | ( )
文字クラス[]
[]とテキストが一致していることを確認
[abc]
-使用(ハイフン)
[a-zA-Z]
:すべてのアルファベット[0-9]
:数字[]内
^
前^後ろにあるものを除く.[^0-9]
:非数値文字のみを表すその他
[共通文字クラス]
[0−9]や[A−zA−Z]などは非常に一般的な正規表現である.この一般的な正規式は単独の表現で表すことができる.次を覚えてください.
\d
-数値と一致し、式は[0-9]と同じです.\D
-非数値と組み合わせ、[^0-9]
の式は同じです.\s
-スペース文字と組み合わせ、[ \t\n\r\f\v]
の式は同じです.一番前のスペースはスペースです.\S
-スペース以外の文字と組み合わせて、[^ \t\n\r\f\v]
の式は同じです.\w
-アルファベット+数字(アルファベット数字)と組み合わせ、[a-zA-Z0-9_]
の式は同じです.\W
-アルファベット+数字以外の文字と組み合わせ、[^a-zA-Z0-9_]
の式は同じです.Dot(.)
正規表現のDot(.)メタ文字は、改行記号
\n
以外のすべての文字と一致します.理解を助けるために、文字列「aab」、「a 0 b」、および「abc」が正規表現
a.b
とどのように一致するかを見てみましょう..
が一致するため、通常のフォーマットと一致する..
が一致するため、通常のフォーマットと一致する.繰り返し(*)
*
前のアルファベットaはゼロから無限に繰り返すことができます正規文字列が一致するかどうか説明
ca*t
ctYes"a"は0回ca*t
catyes"a"は0回以上繰り返してマッチング(1回繰り返し)ca*t
caaatyYes"a"は0回以上繰り返してマッチング(3回繰り返し)繰り返し(+)
+
少なくとも1回は繰り返す必要がある正規文字列
ca+t
ctNo"a"を0回繰り返す不整合ca+t
catyes"a"を1回以上繰り返すマッチング(1回繰り返す)ca+t
caaatyes"a"を1回以上繰り返すマッチング(3回繰り返す)繰り返し({m,n},?)
繰り返し回数を3回に制限するか、1回から3回に制限します.
1. {m}
ca{2}t
以上の正規式の意味は以下の通りである.「c++a(2回繰り返さなければならない)+t」
以上の正規式の組み合わせは以下の表の通りです.
正規文字列
ca{2}t
catNo"a"が1回のみ不整合ca{2}t
caatYes"a"が2回だけ一致するかどうかを説明します2. {m, n}
ca{2,5}t
以上の正規表現の意味は次のとおりです.「c+a(2-5回繰り返す)+t」
以上の正規式の組み合わせは以下の表の通りです.
正規文字列
ca{2,5}t
catNo"a"が1回だけ不整合ca{2,5}t
caatyes"a"が2回だけ一致ca{2,5}t
caaaatyes"a"が5回も一致するかどうかを説明します.3.
?
重複ではありませんが、似たような概念?
があります.?
メタ文字は{0, 1}
を表します.次の正規式を見よう
ab?c
以上の正規表現の意味は次のとおりです.「a+b(あってもなくても)+c」
以上の正規式の組み合わせは以下の表の通りです.
1回は正則文字列を使用して
ab?c
abcyes"b"、0回はマッチングab?c
acyes"bを使用してマッチングつまり、b字があるかないかは、どちらも組み合わせの場合です.
正規表現を使用した文字列の検索
メソッドの目的match()は、文字列が最初から正規表現と一致しているかどうかをチェックします.search()文字列全体を検索し、正規表現と一致するかどうかを確認します.findall()正規表現に一致するすべての文字列(substring)がリストに返されます.finditter()正規表現と一致するすべての文字列(substring)を繰り返し可能なオブジェクトに返します.
リファレンス
Reference
この問題について(正則式の定理概念編), 我々は、より多くの情報をここで見つけました https://velog.io/@superyodi/정규식-정리-개념편テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol