teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

2

誤字

2020/05/10 17:22

投稿

ajinomoto
ajinomoto

スコア1

title CHANGED
File without changes
body CHANGED
@@ -2,22 +2,23 @@
2
2
  replaceに引数を渡したいです
3
3
 
4
4
  ### 発生している問題・エラーメッセージ
5
- replaceに引数を渡す方法がわかりません
5
+ 以下のソースコードは、例えば
6
6
 
7
- ### 該当のソースコード
8
- 以下コードは、例えば
9
7
  'mother'=>1
10
8
  の部分を
9
+
11
10
  <span class="mother">'mother'</span>=>1
12
11
  のようにしています。
12
+
13
13
  つまり const obj に一致したものを span で囲むために replace を使っている状況です。
14
14
 
15
- span がついた次の状態ですが、これにさらに
15
+ こうして span がついた次の状態ですが、これにさらに
16
16
  <span class="mother">'mother'</span>=>1
17
17
 
18
- 次のようにクラスを追加したいのですが、その方法がわからなす。
18
+ 次のようにクラスを追加したいので、その方法をお尋ねしたと思います。
19
19
  <span class="info_base mother">'mother'</span>=>1
20
20
 
21
+ ### 該当のソースコード
21
22
 
22
23
 
23
24
  ```html
@@ -79,4 +80,4 @@
79
80
  ですけど、それならばどうずればできるのか全くわからなくなってしまいました。
80
81
 
81
82
  ### 補足情報
82
- 正規表現にgのオプションを追加しました
83
+ 正規表現にgのフラグを追加しました

1

正規表現にgのオプションを追加しました

2020/05/10 17:22

投稿

ajinomoto
ajinomoto

スコア1

title CHANGED
File without changes
body CHANGED
@@ -1,13 +1,10 @@
1
1
  ### 前提・実現したいこと
2
- 2つの質問解決したいです
2
+ replaceに引数したいです
3
- みなさまのご助力を宜しくお願い致します。
4
3
 
5
4
  ### 発生している問題・エラーメッセージ
6
- 【質問1】replaceが一つ目にしか効かないこと
7
- 【質問2】replaceに引数を渡す方法がわからないこと
5
+ replaceに引数を渡す方法がわかりません
8
6
 
9
7
  ### 該当のソースコード
10
- 【コード概要】
11
8
  以下コードは、例えば
12
9
  'mother'=>1
13
10
  の部分を
@@ -15,14 +12,9 @@
15
12
  のようにしています。
16
13
  つまり const obj に一致したものを span で囲むために replace を使っている状況です。
17
14
 
18
- 【質問1】
19
- しかし
20
- 'mother'=>1
15
+ span がついた次の状態ですが、これにさらに
21
- は二つあるのに一つ目しか span で囲まれないことで悩んでいます。
16
+ <span class="mother">'mother'</span>=>1
22
17
 
23
- 【質問2】
24
- そして、span がついた次の状態ですが、これにさらに
25
- <span class="mother">'mother'</span>=>1
26
18
  次のようにクラスを追加したいのですが、その方法がわからないです。
27
19
  <span class="info_base mother">'mother'</span>=>1
28
20
 
@@ -48,7 +40,7 @@
48
40
  };
49
41
  $.each(obj, function(key, cols) {
50
42
  cols.forEach(col => {
51
- p = p.replace(new RegExp(col), replacer);
43
+ p = p.replace(new RegExp(col,'g'), replacer);
52
44
  });
53
45
  });
54
46
 
@@ -62,10 +54,8 @@
62
54
  ```
63
55
 
64
56
  ### 試したこと
65
- 【質問1】方は皆目見当がつかない状況です。
57
+ obj キーをクラスに付与したいということので、以下のように replacer に key とう引数を渡せばきると踏んだのでができませんでした
66
58
 
67
- 【質問2】の方は obj のキーをクラスに付与したいということなので、以下のように replacer に key という引数を渡せばできると踏んだのですができませんでした。
68
-
69
59
  ```js
70
60
  $.each(obj, function(key, cols) {
71
61
  cols.forEach(col => {
@@ -88,6 +78,5 @@
88
78
  調べてみますと replace の第二引数( 上記replacer )は match や offset など使える引数が決まっているみたい(?)でして、replacer(key) という書き方ができないのかもしれません。
89
79
  ですけど、それならばどうずればできるのか全くわからなくなってしまいました。
90
80
 
91
- ### 補足情報(FW/ツールのバージョンなど)
81
+ ### 補足情報
92
-
93
-
82
+ 正規表現gのオプションを追加ました