使用通配符的多个邮政编码的正则表达式

时间:2011-01-13 22:15:12

标签: regex

我必须验证逗号分隔的邮政编码列表,例如“95123,95%,95222,95%-8__,95333”

我有正则表达式^ \ d {5}( - ?\ d {4})?(,\ d {5}( - ?\ d {4})?)* $可以获得有效的拉链没有下划线和百分比字符。如何修改正则表达式以处理示例字符串?

2 个答案:

答案 0 :(得分:0)

为什么不用逗号分割字符串,然后在每个邮政编码上使用正则表达式?

答案 1 :(得分:0)

只要你不太担心验证:

(?:^|,\s*)([0-9\x25_]{1,5}(?:-[0-9\x25_]{1,4})?)

这应该做你需要的,只需执行匹配即可获得每个条目。

注意:我不会进行任何检查,以确保他们有足够的数字(例如,无效 123 _ %2 _-__ 23 如果_仅表示“1个字符”,则为实例