回答編集履歴

1

追記

2020/04/02 07:25

投稿

AkitoshiManabe
AkitoshiManabe

スコア5432

test CHANGED
@@ -13,3 +13,33 @@
13
13
  let quotemeta = str => str.replace(/\W/g, '\$&');
14
14
 
15
15
  ```
16
+
17
+
18
+
19
+ ----
20
+
21
+
22
+
23
+
24
+
25
+ 追記)
26
+
27
+ エスケープはできていましたね。申し訳ありません。
28
+
29
+
30
+
31
+ "(^|.)(" + パターン + ")(.|$)" のパターンに対して
32
+
33
+ **食パンジャムパンごまあんぱん** とパンの名称が連続するのが原因です。
34
+
35
+
36
+
37
+ 以下のようにマッチしています。
38
+
39
+
40
+
41
+ 1. 「**食パンジ**ャムパンごまあんぱん」を評価し ``^``+"食パン"+``.`` にマッチ
42
+
43
+ (ジャムパンの**ジ**にかかるため、その次の **ャ** からマッチ処理されます)
44
+
45
+ 2. 「ャムパ**ンごまあんぱん**」を評価し ``.``+"ごまあんぱん"+``$`` にマッチ