2013-06-02 28 views
2

我應該在這個正則表達式中添加什麼來停止「/ stopHere」處的搜索,並且只返回找到的字符串?javascript正則表達式.match停在某個字符串

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

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

此捕獲["goodText=hello/hello/hello/stopHere"],所以如何將我讓它排除 「/ stopHere」?

謝謝!

+1

在要抓取的部分周圍添加一個捕獲組。 – elclanrs

回答

2

不知道這是不是最好的方式,但發現一種叫做Positive Lookahead

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

基本上,如果我把(?=regex)末,它停止時,它發現!

+1

這是一個好方法。 –

+0

感謝@CasimiretHippolyte並感謝您的更正 –

相關問題