javascript街道地址正则表达式验证

时间:2018-02-18 03:55:57

标签: javascript regex validation

请帮我创建街道地址的正则表达式 条件就像是 1.只允许数字,(/ - )和[ABCDFGHJKLMNPRSTV] 2.斜杠后最多允许两个连续字符(字母) 3.应仅以数字开头(最多4个数字),如果他们输入,则休息是可选的:应遵循上述标准 4.可能的组合就像是    12,1567,19 / A,123 / B,12-45,124-138,12-14 / A,14 / A-16,12 / A-16 / B,165 / 2,123 / 1,
   12-14 / 2,14 / 2-16,12 / 2-16 / B,11 / A-12 / 1,12 / 1-14 / 2,0126 / 2-3,125 / BA,345 / BA / 128,
   248/12 / A,123/234 / BA,246/12 / A / 2

我试过用   “^ \ d {1,4}([/ - ]?\ d {0,3} [ABCDFGHJKLMNPRSTV] {0,2} [/ - ]????\ d {0,3}
   [ABCDFGHJKLMNPRSTVV] {0,2}?[/ - ]?\ d {0,3}?[ABCDFGHJKLMNPRSTV] {0,2}?)$“

此代码适用于上述组合但仍允许其他组合,
字符不应该跟“ - ( - C是错的)”后面只能跟**'/'**
我不想输入超过4位数,如果它是一个单独的字符串**(Ex :: 1234是正确的,现在它允许12345 ....到13个字符)** 如果它前面带有'/',则只允许两个字符(现在12ABCDABCD ..允许哪个不正确)。

请提前帮助我创建一个正确的正则表达式。

2 个答案:

答案 0 :(得分:1)

试试这个: ^[0-9]{1,4}(([\-\/][0-9]{1,4})|(\/[ABCDFGHJKLMNPRSTV]{1,2}))*$

  • [0-9]{1,4}:应该以长度为1到4的数字开头
  • [\-\/][0-9]{1,4}):接受-/后跟数字(1到4个长度)
  • (\/[ABCDFGHJKLMNPRSTV]{1,2}):接受/后跟[]
  • 中的1或2个字符
  • (([\-\/][0-9]{1,4})|(\/[ABCDFGHJKLMNPRSTV]{1,2}))*:接受最后2个模式0次或更多次(每次一次)

答案 1 :(得分:-1)

希望这会有所帮助

\d{1,5}\s\w.\s(\b\w*\b\s){1,2}\w*\.

此正则表达式将验证地址

999 S. ABCD St.
eg: 123 N. Snow St.

谢谢,