回答編集履歴

2

補足

2018/09/11 05:40

投稿

otn
otn

スコア84645

test CHANGED
@@ -38,8 +38,14 @@
38
38
 
39
39
 
40
40
 
41
- 文字列の文字からが、以下同様。
41
+ 文字列の2文字からが、以下同様。
42
+
43
+ 文字列の3文字目からが、以下同様。
44
+
45
+ 以下同様。
42
46
 
43
47
 
44
48
 
45
49
  となります。
50
+
51
+ 対象文字列が`111.111.111.111`の場合、「文字列の先頭文字からが、`[01]\d\d.`にマッチする」のが最初なので、それが採用されます。

1

追記

2018/09/11 05:40

投稿

otn
otn

スコア84645

test CHANGED
@@ -19,3 +19,27 @@
19
19
  先頭に`^`が付いておらず末尾に`$`が付いているケースでも、対象文字列の後ろからチェックすると言う事はありません。
20
20
 
21
21
  同様に今回は`.`が正規表現末尾に付いていますが、それを先にマッチさせて、前方に遡ってチェックするような事は行いません。あくまで先頭からチェックです。
22
+
23
+
24
+
25
+ ##追記
26
+
27
+ > (\d|\d\d|[01]\d\d|2[0-4]\d|25[0-5]).
28
+
29
+
30
+
31
+ は、分配法則で括弧を外して書き直すと、
32
+
33
+ `\d.|\d\d.|[01]\d\d.|2[0-4]\d.|25[0-5].`
34
+
35
+ です。
36
+
37
+ 文字列の先頭文字からが、`\d.`にマッチするか?`\d\d.`にマッチするか?`[01]\d\d.`にマッチするか?(中略)`25[0-5].`にマッチするか?の順に調べ、どれもマッチしなければ、
38
+
39
+
40
+
41
+ 文字列の2文字からが、以下同様。
42
+
43
+
44
+
45
+ となります。