繁体   English   中英

方括号组和逗号的正则表达式 javascript

[英]regex for group of square brackets and comma javascript

我正在尝试构建一个正则表达式,我可以用它来替换字符串中的所有“],[”实例,只用“,”。

我坚持这一点。

我经历了许多不同的组合 - 目前正在尝试:

str.replace(/(\[,\])/, ',');

但它没有捡起它,我看不出它有什么问题 - 有什么明显的我做错了吗?

谢谢

您以错误的顺序使用括号,并且需要将多次出现与g标志匹配。

所以你可以使用

text = text.replace(/],\[/g, ',')

或者,如果您想使用捕获组,

text = text.replace(/](,)\[/g, '$1')

请参阅正则表达式演示 #1正则表达式演示 #2

注意:如果括号之间可能有任何数量的空格,请使用\s*来匹配它,例如text = text.replace(/]\s*,\s*\[/g, ',')

JS 演示:

 var text = "text],[text2],[text3"; console.log(text.replace(/],\[/g, ',')); console.log(text.replace(/](,)\[/g, '$1'));

您的方括号位置错误,您不需要普通括号。

让我们按步骤 go:

  1. 您想替换],[的所有实例,因此您需要使用以下内容:
/],[/g

正则表达式中的g确保所有实例都被替换。


  1. []是特殊字符,因此您使用\来阻止正则表达式解析它们:
/\],\[/g


最后结果:

 let str = '[myString],[AnotherString]'; str = str.replace(/\],\[/g, ","); console.log(str);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM