ツール
Regexpal はオンラインの Javascript 正規表現プロセッサです。アドレスは http://www.regexpal.com
規則的なルールを学ぶ上で最も重要なことは、実際の操作です:
一致番号: 707-827-7019
文字グループのマッチング
[0-9][0-9][0-9]-[0-9][0-9][0-9]-[0-9][0-9][0-9] [0-9]
d は任意のアラビア数字
に一致します
D はアラビア語以外の数字と一致します
は任意の文字
に一致します。ddddddddddddd
ddd.ddd.dddd.
キャプチャのグループ化と後方アプリケーション
括弧 () を使用してグループを作成し、1 を使用してキャプチャされたグループのコンテンツを後方参照します
(d)d1 は 707 と一致します
完全に一致する番号:
^((d{3})|^d{3}[.-]?)?d{3}[.-]?d{4}$
^ は行の開始位置を表します
(キャプチャグループ
の開始文字を示します)
( は左括弧
を表します
d{3} は 3 桁の一致を意味します
) は右括弧
を表します
| は選択を示します
[.-]? オプションのピリオドまたはハイフン
と一致します
) グループのエンドキャラクターをキャプチャ
? グループ化がオプションであることを示します
$ は行末までを意味します
ボーダー
一致する行または文字列の先頭にキャレット ^ を使用します
行または文字列の末尾に一致するにはドル記号 $
数量子
量指定子はデフォルトで貪欲です
貪欲量指定子は、最初に文字列全体と一致します。照合しようとすると、入力全体である可能な限り多くのものが選択されます。数量指定子はまず文字全体と一致し、失敗した場合は 1 文字戻って再試行します。このプロセスはバックトラッキングと呼ばれます。
遅延量指定子は、ターゲットの開始位置から開始して一致を検索します。文字列を一度に 1 文字ずつチェックして、一致するものを探します。最後に、文字列全体の一致を試みます。
所有数量指定子はターゲット全体をカバーし、一致するものを見つけようとしますが、試行するのは 1 回のみで、後戻りはしません。
.* を使用して任意の文字に 0 回以上一致する場合
貪欲な数量指定子
中括弧 {} を使用して、パターンが特定の範囲内で一致する回数を制限します。また、未変更の量指定子は貪欲な量指定子です。
7{1,} と 7+
7{0,} と 7*
7 と 7{0,1}
本質的には同じです
7{m,n} は m ~ n 回一致します
遅延数量子
最後に ? を追加すると、量指定子が遅延になります
7?? 最初の 7? は 0 または 1 の 7 に一致しますが、怠惰の後は何も一致しません
7*? ゼロ 7
と一致します
7+? 7
に一致します
7{m,n} と一致しますか? m 7
htmlタグとxmlタグの定期的なマッチングについては次回書きます