javascript - 使用正则表达式选择圆括号内的内容

标签 javascript regex

我正在尝试将内容放入圆形制动器中,

例如..如果我们有类似 var str="test exp (content required)"

的内容

我试图将 str 值设为“所需内容”;我如何使用正则表达式来实现它?我想看看字符串是否出现多次圆括号,例如 var str="test exp (content required) test (tst)"

最佳答案

试试这个:

var m = /\(([^)]*)\)/.exec(str);
str = m[1];

请注意:请记住,对于简单的情况,最好使用常规字符串方法,例如 indexOfsubstring,因为它们通常更快、更清晰。例如:

var i1 = str.indexOf("("), i2 = str.indexOf(")");
str = str.substring(i1, i2);

如果你想匹配括号内的所有序列,你可以试试这个:

var m = str.match(/\([^)]*\)/g);

现在m包含括号之间的所有内容,包括括号。如果您只想获取内部内容,请尝试以下操作:

m = m.map(function(match) {return match.slice(1, -1);});

请记住,这不适用于 IE8 及更早版本,因为它不支持数组的 map 方法。要么使用polyfill,要么使用经典的for循环。

关于javascript - 使用正则表达式选择圆括号内的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12296290/

相关文章:

javascript - 在 flexslider 控制拇指悬停上显示覆盖

javascript - 如何在javascript中倒计时完成后加载页面

javascript - Google Apps 脚本 - 检查电子邮件是否已正确发送

javascript - 创建并附加一个元素,innerHTML?恐怖... [请不要使用 jquery]

在谷歌数据工作室中使用lookbehind和google-re2进行正则表达式提取

regex - 尝试检查输入文本框的时间

javascript - 使用其 CSS 样式表将 javascript 插入本地 html?

Python 正则表达式查找两个字符对之间的所有子字符串

带标点符号的重复单词的正则表达式

c# - 如何简化以下正则表达式