我正试图验证空中交通管制的风向和速度格式,例如190/10。风向必须从001到360,风速从00到30。
我试过了
^(0[0-9][1-9]|1[0-9][0-9]|2[0-9][0-9]|30[0-9]|31[0-9]|32[0-9]|33[0-9]|34[0-9]|35[0-9]|36[0])[\/](0[0-9]|[12][0-9]|3[0])$
但它不起作用。然而,这部分工作
^(0[0-9][1-9]|1[0-9][0-9]|2[0-9][0-9]|30[0-9]|31[0-9]|32[0-9]|33[0-9]|34[0-9]|35[0-9]|36[0])|/|(0[0-9]|[12][0-9]|3[0])$
任何帮助将不胜感激
答案 0 :(得分:0)
你可以尝试
^(?:[0-2]\d\d|3[0-5]\d|360)\/(?:[0-2]\d|30)$
其中,
(?:...)Non-capturing group
\/
字面匹配字符/
(?:...)Non-capturing group
注意:\d
匹配数字[0-9]
答案 1 :(得分:0)
对于0-360
部分,您可以使用:
'^((?:\d)|(?:\d\d)|(?:[0-3][0-5]\d)|(?:00\d)|(?:360))' # correctly anchored at the end
所以,这值得一试:
^((?:(?:\d)|(?:\d\d)|(?:[0-2]\d\d)|(?:3[0-5]\d)|(?:00\d)|(?:360))\/(?:(?:30)|(?:[0-2]\d)))$
答案 2 :(得分:0)
对于需要更改的swift 2:
^(?:|[0-2]\\d\\d|3[0-5]\\d|360)\\/(?:|[0-2]\\d|30)$