javascript regex .match停在某个字符串

时间:2013-06-02 21:46:44

标签: javascript regex

我应该在这个正则表达式中添加什么来停止搜索“/ stopHere”,并且只返回它在该字符串之前找到的内容?

var string = "http://website.com/#!/goodText=hello/hello//stopHere=badtext";

var reg = string.match(/goodText=.*\/stopHere/);

这会捕获["goodText=hello/hello/hello/stopHere"],那么如何将其排除在“/ stopHere”之外?

谢谢!

1 个答案:

答案 0 :(得分:2)

不知道这是不是最好的方法,但找到了一个名为Positive Lookahead的东西:

var string = "http://website.com/#!/goodText=hello/hello//stopHere=badtext";    
var reg = string.match(/goodText=.*(?=\/stopHere)/);
// returns: goodText=hello/hello/

基本上如果我将(?=regex)放在最后,它会在找到时停止!