2017-05-17 26 views
-1

3桁の整数だけを返す正規表現を作成しようとしています。 3つ以上または3つ以上。しかし、以下の私の正規表現は4桁の数字にも当てはまります。何か不足していますか?特定の桁数に一致する正規表現

var threeDigits = /\d{3}$/ 

console.log(threeDigits.test("12"))// false 
console.log(threeDigits.test("123"))// true 
console.log(threeDigits.test("1234"))// true yet this is four digits??? 
+0

あなたは '^ \ dを使用する必要があります{3}'^'文字列の先頭のためです$'。 –

答えて

4

あなたが開始アンカー^終了アンカー$を持っていますが、ない:アンカーなしで

var threeDigits = /^\d{3}$/ 

を、マッチは例えば、文字列のどこにでも始めることができます

"1234".match(/\d{3}$/g) // ["234"] 
0

^[0-9] {3} $または^ \ d {3} $のいずれかを使用してください。

関連する問題