回答編集履歴

2

修正

2018/03/21 12:57

投稿

退会済みユーザー
test CHANGED
@@ -58,14 +58,12 @@
58
58
 
59
59
  EOT;
60
60
 
61
- $patterns = ['/^300$/m', '/(?(?=(^\d{1,2})$)\d{1,2}$|^[12][\d]{2}$)/m', '/^[3-9]\d{2}$/m'];
61
+ $patterns = ['/^300$|(?(?=(^\d{1,2})$)\d{1,2}$|^[12][\d]{2}$)/m', '/^[3-9]\d{2}$/m'];
62
62
 
63
- $replace = ['0', '0', '1'];
63
+ $replace = ['0', '1'];
64
64
 
65
65
  $targetText = preg_replace($patterns, $replace, $targetText);
66
66
 
67
67
  echo $targetText;
68
68
 
69
69
  ```
70
-
71
- 多分、300 も 0 の条件かけるはずだけど、整理できませんでした^^;

1

修正

2018/03/21 12:57

投稿

退会済みユーザー
test CHANGED
@@ -30,18 +30,42 @@
30
30
 
31
31
  ```
32
32
 
33
+ **指摘を受けての修正**
34
+
33
35
  ```php
34
36
 
35
- 0
37
+ <?php
36
38
 
37
- 0
39
+ $targetText = <<<EOT
38
40
 
39
41
  0
40
42
 
41
43
  1
42
44
 
43
- 1
45
+ 11
44
46
 
45
- 1
47
+ 111
48
+
49
+ 200
50
+
51
+ 300
52
+
53
+ 301
54
+
55
+ 400
56
+
57
+ 900
58
+
59
+ EOT;
60
+
61
+ $patterns = ['/^300$/m', '/(?(?=(^\d{1,2})$)\d{1,2}$|^[12][\d]{2}$)/m', '/^[3-9]\d{2}$/m'];
62
+
63
+ $replace = ['0', '0', '1'];
64
+
65
+ $targetText = preg_replace($patterns, $replace, $targetText);
66
+
67
+ echo $targetText;
46
68
 
47
69
  ```
70
+
71
+ 多分、300 も 0 の条件かけるはずだけど、整理できませんでした^^;