regEx for Florida驾驶执照

时间:2015-02-26 00:29:21

标签: jquery regex

我有一个使用jQuery插件$(#example).mask(A999-999-99-999-9);的面具来匹配佛罗里达州驾驶执照号码。我想弄清楚的是如何为A999-999-99-999-9写一个regEx。这是我到目前为止所提出的任何人都有任何建议或指示?

("^[A-Za-z]{1}\d{12}$")

("^[A-Za-z]{1}\d{3}[- /]\d{3}[- /]\d{2}[- /]\d{3}[- /]\d{1}$")

3 个答案:

答案 0 :(得分:0)

嗯......这可能不是"专业"回答,但我认为它会起作用:

/[A-Za-z]{1}[0-9]{3}\W[0-9]{3}\W[0-9]{2}\W[0-9]{3}\W[0-9]{1}/

答案 1 :(得分:0)

你打算接受破折号是否可选?如果没有,那就非常简单了:

/\A[A-Z]\d{3}-\d{3}-\d{2}-\d{3}-\d\z/i

如果您要接受破折号作为可选项,那么什么是有效的替代品?在您的示例中,您可以选择破折号和[- /];那些是所有有效的分隔符,如果是,你想要它们是可选的吗?如果是这样的话:

/\A[A-Z]\d{3}[ /-]?\d{3}[ /-]?\d{2}[ /-]?\d{3}[ /-]?\d\z/i

但实际上,最简单的方法是首先处理输入以删除任何不是字母数字的内容,然后测试结果:

input.replace(/[^a-z0-9]/i, "").match(/\A[a-z]\d{12}\z/i)

答案 2 :(得分:0)

这应该是你所需要的:

"^[a-zA-Z]{1}[0-9]{12}$"

虽然你想要添加其他状态,但我会把掩码取出来。除非您更改掩码以匹配每个州的regEx。