"[1] a [2] b [3] c"我在 Javascript 中有 value = 的字符串。我想将其替换为"a b c".
我的问题是如何使用正则表达式在 Javascript 中做到这一点?
我尝试了以下但没有运气:
var strText = "[1] a [2] b [3] c";
var strTextReplaced = strText.replace(new RegExp("\[/d\] ", ""), "");
"[1] a [2] b [3] c"我在 Javascript 中有 value = 的字符串。我想将其替换为"a b c".
我的问题是如何使用正则表达式在 Javascript 中做到这一点?
我尝试了以下但没有运气:
var strText = "[1] a [2] b [3] c";
var strTextReplaced = strText.replace(new RegExp("\[/d\] ", ""), "");
使用正则表达式/\[\d+\]/g:
> var value = "[1] a [2] b [3] c";
> value.replace(/\[\d+\]/g, '')
" a b c"
\d而不是/d.[和]。/\[\d+\]\s*/如果要删除多余的空格,请使用。
它\d不是/d,并且您还需要转义特殊字符\。此外,您需要允许多个替换的“g”或全局标志。
在 JavaScript 中\有特殊的含义。所以你也需要逃避它。
strText.replace(new RegExp("\\[\\d\\]", "g"), "")
正因为如此,JavaScript 才有了上述的简写版本。
strText.replace(/\[\d\]/g, "")
从技术上讲,您只需要逃避[. 而不是].
strText.replace(/\[\d]/g, "")