[英]regex to match everything except 2 digits
我遇到了正则表达式问题,该问题与除中间2位数字外的所有内容都匹配。
例:
输入: 40442**75**22123456
匹配: 75
允许: 4044273xxxxxxxx
, 4044255xxxx
等。
我的表达式是: [0-9]{5}[0-68-9]{1}[0-46-9]{1}[0-9]{8}
它适用于完全匹配,但不适用于例外情况。
如果您只想在该位置允许75个,请交替使用。
轮流处理所有例外情况 。 会有重叠
但是会有一些不允许的。
如果在这种情况下, 不允许的数量很少,请使用通用
否定断言的范围,以禁止一些。 即[0-9]{2} (?<!52|74)
[0-9]{5}(?:[0-68-9][0-46-9]|75)[0-9]{8}
展开式
[0-9]{5}
(?:
[0-68-9]
[0-46-9]
| 75
| [0-9]5
| etc...
)
[0-9]{8}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.