正则表达式 - 找到一个 8 个字母的单词,其中有数字/字母/两者并以 .php 结尾



我试图使用正则表达式找到许多 8 位数字的单词,

  1. 应包含数字/字母/两者
  2. 在那 8 位数字之后,它应该以 .php 结尾
  3. 它应该只有 8 位数字,既不是 7 也不是 6

我试过这个bd{8}b.php

但是我失败了,例如它仅适用于数字

12121212.php

23232323.php

我也不需要

东西分类.php

AB787C类.php

哈斯-书商.php

最终结果应该像abcd1234.php而不是something-abcd1234.php

您可以使用字符类

b[a-zA-Z0-9]{8}b

  • b - 单词边界。
  • [a-zA-Z0-9]{8} - 匹配数字、字母或两者兼而有之。( {8} -> 长度必须为 8 个字符(

更新

最终结果应该像 abcd1234 一样.php而不是 某事-ABCD1234.php

b[a-zA-Z0-9]{8}.php$

演示

好吧,如果您希望完整的字符串匹配,则需要在开头使用^锚点,在结尾使用$而不是b

^[a-zA-Z0-9]{8}.php$

如果你的数据是文件名列表,那么这个正则表达式将起作用:

/^[a-z0-9]{8}.php$/i

它断言文件名正好是 8 个[a-zA-Z0-9]字符,后跟 .php 。请注意,i修饰符使其不区分大小写,因此我们也不必在字符类中指定A-Z

这是关于 3v4l.org 的演示

最新更新