用于验证给定输入的正则表达式,该输入接受一个空格或作为文本长度一部分并以97开头的连字符



使用regex验证文本,regex允许一个空格或连字符以97开头。

regex: ^97(?=[0-9]+[ -]?[0-9]+)(?!([0-9])(?:1|[ -]){2}).{3}$ 
ex: 97123 valid
97-12 valid but not working as per the above reg 
971-2 valid  
9712- not valid 

您可以使用

^(?=[0-9]+(?:[ -][0-9]+)?$)(?!([0-9])(?:1|[ -]){2})97.{3}$

查看regex演示

第一个前瞻(?=[0-9]+(?:[ -][0-9]+)?$)现在需要

  • [0-9]+-一个或多个数字
  • (?:[ -][0-9]+)?-可选出现空格或连字符,然后出现一个或多个数字
  • $-字符串末尾

立即出现在当前位置的右侧(即字符串的开头(。

您的需求可以用这个简化的正则表达式来满足:

^97(?=.{3}$)(?:[ -]?d)+$

RegEx演示

RegEx分解:

  • ^:启动
  • 97:匹配97
  • (?=.{3}$):再匹配3个字符直到结束
  • (?:[ -]?d)+:匹配一个可选的连字符或后面跟一个数字的空格。将此非捕获组匹配1次以上
  • $:结束

最新更新