我有一個正則表達式驗證3個連續的數字。新的RegExp不起作用
/^\d{3}$/.test("12345") // false
/^\d{3}$/.test("123") // true
如何將此正則表達式模式轉換爲RegExp
對象?
我想:
var re = new RegExp("\\d{3}", "gi");
但re.test("12345")
返回true
我在做什麼錯?
我有一個正則表達式驗證3個連續的數字。新的RegExp不起作用
/^\d{3}$/.test("12345") // false
/^\d{3}$/.test("123") // true
如何將此正則表達式模式轉換爲RegExp
對象?
我想:
var re = new RegExp("\\d{3}", "gi");
但re.test("12345")
返回true
我在做什麼錯?
使用正則表達式:
^\d{3}$
開始和指定行尾。
在JavaScript中,你應該逃脫\
字符,即:
"^\\d{3}$"
var re = new RegExp("^\\d{3}$");
new RegExp("^\\d{3}$", "gi")
你忘了^和$
史迪威不工作:VAR重新=新的RegExp(「^ \ d { 3} $「,」gi「);的console.log(re.test( 「123」));返回false – Catalin 2012-01-30 07:53:17
@RaraituL,'^ \ d {3} $'它是正則表達式。當然,你應該在你的環境中逃避它。在JavaScript中它會是'^ \\ d {3} $'。 – 2012-01-30 07:55:09