2017-08-24 49 views
0

我有一個字符串可能看起來像這樣用一個前綴

More text here ID[20] [Choice 5] More text here

我需要將其轉換爲這個

More text here 20 [Choice 5] More text here

是更換外包裝支架基本上我需要刪除任何外包裝ID[num]並保存在裏面。

我這樣做:

string.replace(/ID\[/g, ' ')

這消除了ID[在開始,但我無法弄清楚如何刪除後]

回答

3

使用

s = s.replace(/ID\[(\d+)]/g, '$1') 

查看regex demo

詳細

  • ID\[ - 文字字符串ID[
  • (\d+) - 第1組:一個或多個數字
  • ] - 字面]

$1是反向引用到組1的價值。也就是說,它將刪除除ID[...]以外的所有數字。

要匹配ID作爲整個單詞,請在ID之前加上\b(以避免替換類似匹配,如CREATIONID[5])。

JS演示:

var s = "More text here ID[20] [Choice 5] More text here"; 
 
s = s.replace(/ID\[(\d+)]/g, "$1"); 
 
console.log(s);