回答編集履歴

3

文字クラスをまとめる

2016/10/04 07:12

投稿

mpyw
mpyw

スコア5223

test CHANGED
@@ -28,6 +28,6 @@
28
28
 
29
29
  $escaped = preg_quote('!#$%()*+-./:;=?@[]^_`{|}', '/');
30
30
 
31
- $pattern = "/[{$escaped}]|[0-9]/";
31
+ $pattern = "/[{$escaped}0-9]/";
32
32
 
33
33
  ```

2

数字が含まれていなかったので編集

2016/10/04 07:12

投稿

mpyw
mpyw

スコア5223

test CHANGED
@@ -20,12 +20,14 @@
20
20
 
21
21
  また,自前でエスケープすると可読性が落ちるので,こういうやり方でも良いと思います.
22
22
 
23
+ (「最低1文字含まれるかどうか」のみを調べたい場合には`+`を付けなくていいです)
24
+
23
25
 
24
26
 
25
27
  ```php
26
28
 
27
29
  $escaped = preg_quote('!#$%()*+-./:;=?@[]^_`{|}', '/');
28
30
 
29
- $pattern = "/[{$escaped}]/";
31
+ $pattern = "/[{$escaped}]|[0-9]/";
30
32
 
31
33
  ```

1

追記

2016/10/04 07:11

投稿

mpyw
mpyw

スコア5223

test CHANGED
@@ -11,3 +11,21 @@
11
11
 
12
12
 
13
13
  [https://3v4l.org/cs6hr](https://3v4l.org/cs6hr)
14
+
15
+
16
+
17
+ ---
18
+
19
+
20
+
21
+ また,自前でエスケープすると可読性が落ちるので,こういうやり方でも良いと思います.
22
+
23
+
24
+
25
+ ```php
26
+
27
+ $escaped = preg_quote('!#$%()*+-./:;=?@[]^_`{|}', '/');
28
+
29
+ $pattern = "/[{$escaped}]/";
30
+
31
+ ```