var string = "This is a string";
var key = "Th";
var patt = new RegExp(/\b key /, "i");
if(patt.test(string)){
alert("true");
}
我怎樣才能逃避\ B上我可以使用key
變量?如何在RegExp中使用變量?
在此先感謝!
var string = "This is a string";
var key = "Th";
var patt = new RegExp(/\b key /, "i");
if(patt.test(string)){
alert("true");
}
我怎樣才能逃避\ B上我可以使用key
變量?如何在RegExp中使用變量?
在此先感謝!
使用正則表達式的構造函數時,不要使用正則表達式文本。
當你想要一個\
在字符串文字中,你必須將其轉義爲\\
。
下面的代碼:
var patt = new RegExp("\\b " + key + " ", "i");
我還不能肯定,但不要你仍然需要分隔符? –
如果你的意思是'/',它們就是定義一個正則表達式文字的東西。所以不,當你想使用變量時你不能使用它們。 –
謝謝!它工作正常。我只是刪除一些空間:) –
也不會轉回去'indexOf'夠嗎? '(string.indexOf(key)> -1)'?見https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/indexOf甚至https://developer.mozilla.org/en-US/docs/Web/JavaScript/參考/ Global_Objects /字符串/包含 – Stefan
可能重複[你怎麼傳遞給正則表達式的JavaScript變量?(http://stackoverflow.com/questions/494035/how-do-you-pass-a-variable-對一個正則表達式的JavaScript) –