请帮助我为街道地址创建正则表达式。
条件就像
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}?[ABCDFGHJKLMNPRSTRST] {0,2}?[/-]?\ d {0,3}?
[ABCDFGHJKLMNPRSTVV] {0,2}?[/-]?\ d {0,3}?[ABCDFGHJKLMNPRSTV] {0,2}?)$“
该代码适用于上述组合,但仍然允许其他组合,
字符后不应加“-(-C是错误的)”,仅应后跟**'/'**
我不想输入超过4位的数字,如果它是一个字符串**(例如:1234是正确的,现在允许12345 .... to 13个字符)**
并且如果以'/'开头则只能使用两个字符(现在12ABCDABCD ..允许不正确)。
在此先感谢您帮助我创建正确的正则表达式。
最佳答案
尝试这个:^[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次或更多次(每次一次)
关于javascript - javascript街道地址正则表达式验证,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48848286/