如何为此创建 REGex,长度为 7 到 12 个字符--->第 4、第 6 和第 10 个字符是其中之一:1、5、9、A、S、K

  • 本文关键字:字符 和第 其中之一 REGex 创建 regex
  • 更新时间 :
  • 英文 :


我想用这个来验证商业防火墙 --> 长度为 7 到 12 个字符,第 4、6 个和第 10 个字符是其中之一:1、5、9、A、S、K

^[a-zA-Z0-9]{7-12}$

你可以使用这个正则表达式,

^.{3}[159ASK].[159ASK].(?:..[159ASK].{0,2}|.{0,2})$

^ 开头的字符串然后允许任何三个字符与 .{3} 然后根据需要,第 4 个字符是[159ASK]中的任何字符,然后.将任何字符表示为第 5 个字符,然后第六个字符再次由 [159ASK] 表示,然后.允许任何字符作为第七个字符,最后(?:..[159ASK].{0,2}|.{0,2})这表示两个字符中的任何一个,或者如果它们至少是 10 个字符,则第 10 个字符是再次来自[159ASK]

您可以使用@Pushpesh提供的解决方案,但如果您进一步想减少解决方案的长度,则可以使用

^.{3}([159ASK].)1(?:..1{0,2}|.{0,2})$

其中 \1 是一个反向引用,表示第一个捕获组的值 [159ASK]。

?:表示非捕获组

您可以进一步阅读

捕获

/非捕获组和返回引用

相关内容

最新更新