回答編集履歴

1

調整

2021/12/17 06:46

投稿

yambejp
yambejp

スコア116835

test CHANGED
@@ -1,8 +1,6 @@
1
1
  とりあえずこうしておいて
2
2
 
3
3
  ```PHP
4
-
5
- <?PHP
6
4
 
7
5
  $a=[
8
6
 
@@ -38,15 +36,19 @@
38
36
 
39
37
  '「!!」',
40
38
 
39
+ '「男の中の「男」かも' ,
40
+
41
+ '「男の中の「男」かも」' ,
42
+
41
43
  ];
42
44
 
43
45
 
44
46
 
45
47
  foreach($a as $str){
46
48
 
47
- if(preg_match("/(?<name>[^「」]+?)(「(?<comment>.+|$)」)/u",$str,$match) or
49
+ if(preg_match("/\A(?<name>[^「」]+?)(「(?<comment>.+)」\z)/u",$str,$match) or
48
50
 
49
- preg_match("/\A「(?<comment>.+|$)」\z/u",$str,$match) or
51
+ preg_match("/\A「(?<comment>.+?|$)」\z/u",$str,$match) or
50
52
 
51
53
  preg_match("/\A(?<name>[^「」]+)\z/u",$str,$match)){
52
54
 
@@ -67,3 +69,5 @@
67
69
  ```
68
70
 
69
71
  あとはcommentを再検査すればよいでしょう
72
+
73
+ ※調整版