2013-12-12 59 views
2

我試圖通過以不區分大小寫的方式將輸入與正則表達式匹配來進行驗證。正則表達式作爲一個對象的字符串從服務中退出。我可能會得到這樣的:javascript從字符串中創建不區分大小寫的正則表達式

{regex:"ane"} 

我可以做到以下幾點:

var rx = new RegExp(object.regex); /*The regex is now: /ane/*/ 
"plane".match(rx); 

不過,我我真正想要做的是以下幾點:

var rxInsensitive = new RegExp(/ane/i); /*The regex is now: /ane/i */ 
"plANE".match(rx); 

我有問題然而將字符串轉換爲這種形式。當我做到以下幾點:

var rxInsensitive = newRegExp(object.regex + "/i"); 

我最終得到的正則表達式/ane/i/,而不是/ane/i。有沒有人有什麼建議?

回答

7
var re = new RegExp("pattern", "flags"); 

所以這將是

var rx = new RegExp(object.regex,"i"); 

See MDN for more info

+0

哇,正是我需要的,謝謝你的快速反應。我會在可用時接受。 – Conqueror

相關問題