2015-03-31 67 views
0

我試圖找到並用我自己的單詞替換「[num]」,但這不起作用。如果我刪除「[」和「]」,它就會起作用。查找並替換字 - 不區分大小寫

response = response.replace(/[num]/i, 'my text'); 
+0

您是否碰巧在需要替換的文本中有多個num-s?因爲沒有g標誌,它只會得到第一個發生 – 2015-03-31 06:50:39

回答

1

試試這個:

response = response.replace(/\[num\]/i, 'my text'); 

JSFIDDLE DEMO

在一個邊注:

如果你想更換一個括號內的文字,那麼你可以使用這個表達式:

/\[[^\]]+\]/g 
2

你需要轉義爲[]在正則表達式來指定一個character set

response = response.replace(/\[num\]/i, 'my text'); 
0

的方括號表示[]字符類。

regular-expressions.info

隨着「字符類」,也稱爲「字符集」,你可以告訴 正則表達式引擎只有一個的幾個字符匹配。只需要 放置您想要匹配方括號之間的字符。如果 想匹配a或e,請使用[ae]。你可以使用這個來匹配灰色或灰色的 。

因此,您的代碼中的regex.replace將取代「n或u或m」與「我的文本」的任何發生。

0

如果它正在工作,爲什麼你不去除「[」和「]」,你能提供這樣我可以弄清楚你真的想在那裏做什麼?