Javascript 正则表达式 : Match between ']' and ' - ' , 错误:量词无效

标签 javascript regex char match between

我有这个字符串:

var str = "[RANKING] Bank President - Main office."

目标:

']'之间的文字和 ' - ' (注意空格)将在 Javascript 中匹配.

努力:

到目前为止,

1)我试过了

(?<=\])(.+)(?= -)/gi

这在这里非常有效: http://regexr.com?37abq , 但是,在 javascript 中我得到一个 Error : invalid quantifierfirebug 中。

2)我也试过:

\](.+) -

这在这里工作得很好: http://www.rexfiddle.net/TzsXnjQ 除了它甚至匹配 ']'' - ' ,因此,在某种程度上使它变得非必要。

3) 并添加如下内容:

\]^(.+)$ -

代码进入休眠状态...

非常感谢任何建议。

最佳答案

选项 #2 应该可以,只需获取第二个匹配索引,例如

var str = "[RANKING] Bank President - Main office."
var matches = str.match(/\](.+?) - /);
if (matches) {
    var stringYouWant = matches[1];
}

选项 #1 不起作用,因为 JS 中的 RegExp 库不支持后视

关于Javascript 正则表达式 : Match between ']' and ' - ' , 错误:量词无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20137172/

相关文章:

Char x[50] 和 Char x[100] 输出

javascript - 如何本地存储包含 div 的变量并恢复它

Javascript 伪经典继承 vs 函数式继承

javascript - JavaScript 中的模板引擎是如何工作的?

regex - 字符类\w不工作?

java - 用于验证 SQL 的正则表达式

javascript - iPhone 和 iPad 上的 Safari 在缩放(双击并捏合)时崩溃

java - 提取查询参数的正则表达式因日期时间字符串而失败

java - 字符的拆分和求和

c - 将 Char 数组附加到 Char 指针