回答編集履歴
2
補足
answer
CHANGED
@@ -18,6 +18,9 @@
|
|
18
18
|
です。
|
19
19
|
文字列の先頭文字からが、`\d.`にマッチするか?`\d\d.`にマッチするか?`[01]\d\d.`にマッチするか?(中略)`25[0-5].`にマッチするか?の順に調べ、どれもマッチしなければ、
|
20
20
|
|
21
|
-
文字列の
|
21
|
+
文字列の2文字からが、以下同様。
|
22
|
+
文字列の3文字目からが、以下同様。
|
23
|
+
以下同様。
|
22
24
|
|
23
|
-
となります。
|
25
|
+
となります。
|
26
|
+
対象文字列が`111.111.111.111`の場合、「文字列の先頭文字からが、`[01]\d\d.`にマッチする」のが最初なので、それが採用されます。
|
1
追記
answer
CHANGED
@@ -8,4 +8,16 @@
|
|
8
8
|
あと、高度な指定で、マッチが失敗したときの動作を変更する事も出来ます。
|
9
9
|
|
10
10
|
先頭に`^`が付いておらず末尾に`$`が付いているケースでも、対象文字列の後ろからチェックすると言う事はありません。
|
11
|
-
同様に今回は`.`が正規表現末尾に付いていますが、それを先にマッチさせて、前方に遡ってチェックするような事は行いません。あくまで先頭からチェックです。
|
11
|
+
同様に今回は`.`が正規表現末尾に付いていますが、それを先にマッチさせて、前方に遡ってチェックするような事は行いません。あくまで先頭からチェックです。
|
12
|
+
|
13
|
+
##追記
|
14
|
+
> (\d|\d\d|[01]\d\d|2[0-4]\d|25[0-5]).
|
15
|
+
|
16
|
+
は、分配法則で括弧を外して書き直すと、
|
17
|
+
`\d.|\d\d.|[01]\d\d.|2[0-4]\d.|25[0-5].`
|
18
|
+
です。
|
19
|
+
文字列の先頭文字からが、`\d.`にマッチするか?`\d\d.`にマッチするか?`[01]\d\d.`にマッチするか?(中略)`25[0-5].`にマッチするか?の順に調べ、どれもマッチしなければ、
|
20
|
+
|
21
|
+
文字列の2文字からが、以下同様。
|
22
|
+
|
23
|
+
となります。
|