jQuery验证Regx捕获组

时间:2019-07-19 10:17:05

标签: javascript regex

我正在寻找使用jQuery validate验证文本字段的方法,但是它必须采用以下格式:

(仅字母和数字)可选空间(-)可选空间(仅字母和数字)可选空间(-)可选空间(仅数字)可选空间(-)可选空间(数字YYYY)

到目前为止,我有:

/^(a-zA-Z)\s(-)\s(a-zA-Z)\s(-)\s(\d+)\s(-)\s(0-9){4}$/

2 个答案:

答案 0 :(得分:1)

对问题使用以下正则表达式:

在此处查找有效的正则表达式:https://regex101.com/r/CjX5BE/1

/^([a-zA-Z0-9]*)\s*(-)\s*([a-zA-Z0-9]*)\s*(-)\s*([0-9]*)\s*(-)\s*([0-9]{1,4})/

已解析:宝马-120D-2000-2017

答案 1 :(得分:0)

使用方括号匹配列表中的任何字符。 +用于匹配1个或多个前面的组。您可以使用{0,1}来匹配一个字符/组的0或1。如果您想要0或任意数量的空格,请改用*。除非使用捕获组进行替换或重新排列或类似的操作,否则不需要括号。

/^[a-zA-Z0-9]+\s{0,1}-\s{0,1}[a-zA-Z0-9]+\s{0,1}-\s{0,1}\d+\s{0,1}-\s{0,1}\d{4}$/

如果您提供一些您想要匹配的东西和您不想匹配的东西的示例,以便进行测试,这将很有帮助。如果您想检查它是否实时运行,可以使用站点Regex101或类似站点。