Laravel - 仅验证固定长度和必需的数字 space
Laravel - validate only digits with fixed length and required space
我正在写一个正则表达式来验证邮政编码,它应该有 6 个字符的长度,前 3 个字符是数字,最后 2 个也是,但是字符 4 应该是 space.
这里有一些例子:
- “123456”无效,因为字符 4 中没有 space。
- “123 45”有效。
"123 4" 无效,因为长度是 5 而不是 6。
这是我写的:
/^[0-9 ]{6,6}$/
它工作正常,只是在上面的代码中,space 不是必需的(但它应该是)。
您可以使用
/^\d{3} \d{2}$/
匹配3个数字,space,2个数字的字符串。见 regex demo.
详情
^
- start of string
\d{3}
- 3 位数字(\d
默认匹配 PHP 正则表达式中的 ASCII 数字,与 [0-9]
相同)
- space
\d{2}
- 2 位数
$
- end of string
请注意 {6,6}
limiting quantifier 与 {6}
相同。
你很接近,但你错过了一些东西。
如果您将正则表达式更改为此,它应该会起作用。
^[0-9]{3}\s[0-9]{2}$
或者您也可以使用
^\d{3}\s\d{2}$
请注意,当您说{6,6}
时,表示前面的表达式必须出现在m 到n 次之间。你可以把它作为 {6}
,虽然你的正则表达式是错误的,但它只是需要知道的东西。
希望对您有所帮助:)
我正在写一个正则表达式来验证邮政编码,它应该有 6 个字符的长度,前 3 个字符是数字,最后 2 个也是,但是字符 4 应该是 space.
这里有一些例子:
- “123456”无效,因为字符 4 中没有 space。
- “123 45”有效。
"123 4" 无效,因为长度是 5 而不是 6。
这是我写的:/^[0-9 ]{6,6}$/
它工作正常,只是在上面的代码中,space 不是必需的(但它应该是)。
您可以使用
/^\d{3} \d{2}$/
匹配3个数字,space,2个数字的字符串。见 regex demo.
详情
^
- start of string\d{3}
- 3 位数字(\d
默认匹配 PHP 正则表达式中的 ASCII 数字,与[0-9]
相同)\d{2}
- 2 位数$
- end of string
请注意 {6,6}
limiting quantifier 与 {6}
相同。
你很接近,但你错过了一些东西。
如果您将正则表达式更改为此,它应该会起作用。
^[0-9]{3}\s[0-9]{2}$
或者您也可以使用
^\d{3}\s\d{2}$
请注意,当您说{6,6}
时,表示前面的表达式必须出现在m 到n 次之间。你可以把它作为 {6}
,虽然你的正则表达式是错误的,但它只是需要知道的东西。
希望对您有所帮助:)