繁体   English   中英

正则表达式匹配除2位数以外的所有内容

[英]regex to match everything except 2 digits

我遇到了正则表达式问题,该问题与除中间2位数字外的所有内容都匹配。

例:

输入: 40442**75**22123456

匹配: 75

允许: 4044273xxxxxxxx4044255xxxx等。

我的表达式是: [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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM