我正在寻找使用jQuery validate验证文本字段的方法,但是它必须采用以下格式:
(仅字母和数字)可选空间(-)可选空间(仅字母和数字)可选空间(-)可选空间(仅数字)可选空间(-)可选空间(数字YYYY)
到目前为止,我有:
/^(a-zA-Z)\s(-)\s(a-zA-Z)\s(-)\s(\d+)\s(-)\s(0-9){4}$/
答案 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或类似站点。