回答編集履歴

1

追記

2015/07/27 01:53

投稿

ngyuki
ngyuki

スコア4514

test CHANGED
@@ -11,6 +11,38 @@
11
11
  要するに文字列の終端です。ただし、文字列の終端が改行の場合、改行の直前でもマッチします。
12
12
 
13
13
  複数行モードだと各行の終わりにマッチします。
14
+
15
+
16
+
17
+ ```php
18
+
19
+ <?php
20
+
21
+ // 通常は文字列の終端のために用いされますが
22
+
23
+ var_dump(preg_match('/c$/', "abc")); // int(1)
24
+
25
+
26
+
27
+ // 終端に改行があってもマッチします
28
+
29
+ var_dump(preg_match('/c$/', "abc\n")); // int(1)
30
+
31
+
32
+
33
+ // 複数行モードでは各行の終端にもマッチします
34
+
35
+ var_dump(preg_match('/c$/m', "a\nb\nc\nd\n")); // int(1)
36
+
37
+
38
+
39
+ // 文字列の終端なら \z の方がより適切です
40
+
41
+ var_dump(preg_match('/c\z/', "abc\n")); // int(0)
42
+
43
+ var_dump(preg_match('/c\z/m', "a\nb\nc\nd\n")); // int(0)
44
+
45
+ ```
14
46
 
15
47
 
16
48
 
@@ -44,10 +76,12 @@
44
76
 
45
77
  http://php.net/manual/ja/reference.pcre.pattern.modifiers.php
46
78
 
47
- > この修正子は、Perl 非互換な PCRE の機能を有効にします。パターンと対象文字列は、 UTF-8 として処理されます。
79
+ > この修正子は、Perl 非互換な PCRE の機能を有効にします。パターンと対象文字列は、 UTF-8 として処理されます。
48
80
 
49
81
 
50
82
 
51
83
  修飾子です。パターン文字列が UTF-8 として処理されます。
52
84
 
53
85
  文字列を UTF-8 で扱うならとりあえず付けておくと良いです。
86
+
87
+