Javascript正则表达式:']'和' - '之间的匹配,错误:无效的量词

时间:2013-11-22 04:43:41

标签: javascript regex char match between

我有这个字符串:

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

AIM:

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

努力:

到目前为止,

1)我试过

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

这完全适用于此: http://regexr.com?37abq但是,在javascript中我得到Error firebug 中的invalid quantifier

2)我也尝试过:

\](.+) -

这里的效果非常好: http://www.rexfiddle.net/TzsXnjQ ,除了它与']'' - '相匹配,因此,它对某些范围来说不是必需的

3)并添加如下内容:

\]^(.+)$ -

代码处于休眠状态......

任何建议都受到高度赞赏。

1 个答案:

答案 0 :(得分:3)

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

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

选项#1不起作用,因为JS中的RegExp库不支持look-behind