0

你如何 preg_match 固定字母与动态数字?

例如

#^[1-9][0-9]*$#

获取两个数字的代码是否是任何字符串的开头,例如 1 和 0

我想要做的是匹配一个文件的所有字符串,看起来像...... r00,r01,r02,r03......等等,直到例如r999

我尝试做的是

#r^[1-9][0-9]*$#

*这是使用 Preg_Match 完成的

但是它不起作用。有什么帮助/建议吗?

4

4 回答 4

0

^表示“行首”,除非它在括号内使用,当它表示“除了后面的字符之外的所有内容”。

你想要类似的东西#r\d{2,3}#,可以选择^第一个或$最后一个(哈希除外)。

于 2013-10-12T14:06:23.190 回答
0

如果您想停在以下位置,请尝试此模式r999

#^r[0-9]{2,3}$#

这将匹配:

  • 字符串的开头 ( ^)
  • 字面意思r
  • 从 0 到 9 的两位或三位数字
  • 字符串的结尾 ( $)

或者如果没有上限,则此模式r999999是可以接受的:

#^r[0-9]{2,}$#

这将匹配:

  • 字符串的开头 ( ^)
  • 字面意思r
  • 从 0 到 9 的两个或多个数字
  • 字符串的结尾 ( $)
于 2013-10-12T14:05:13.377 回答
0

使用模式:

#^r\d{2,3}$#

解释

于 2013-10-12T14:06:10.430 回答
0

我的 2 美分:

\br\d{1,3}\b

它将匹配 r0,r00,r01,r02,r03...r999 但不匹配r\d{4,}

于 2013-10-12T14:13:56.417 回答