3
我试图匹配以下样品:可变的正则表达式匹配的字母数字
ZU2A ZS6D-9 ZT0ER-7 ZR6PJH-12
它是字母和数字(字母数字)的组合。 下面是一个说明:
- 它将总是以大写字母开头(大写)z
- 仅由一个(1)R,S,T或U的“[R其次总是| S | T | U]“
- 总是只有一个(1)数字”[0-9]“
- 总是至少跟随一个(1)并且可选地最多三(3)个大写(大写)字母此[AZ] {1,3}
- 可选择后跟“ - ”和最少一个(1)和最多两个(2)数字
目前,我有这样的:
Z[R|S|T|U][0-9][A-Z]{1,}(\-)?([0-9]{1,3})
但是,这似乎并没有抓住所有的样品。
编辑:这是一个完整的字符串的一个样本:
ZU0D>APT314,ZT1ER,WIDE1,ZS3PJ-2,ZR5STU-12*/V:/021414z2610.07S/02814.02Ek067/019/A=005475!w%<!
任何帮助,将不胜感激。
谢谢
丹尼
在RE最后一算应该是'{1,2}'。 – user1016274
为什么要关闭'?'?贪婪和非贪婪的行为会如何在这里产生影响? – user1016274
@ user1016274谢谢,最后由3替换为2。 '?'只表示遵循'*'或'+'的贪婪。如果没有前面的内容,'?'是编写'{0,1}'的简短方法。 – phihag