Php 固定字母与动态数字的匹配

Php 固定字母与动态数字的匹配,php,regex,preg-match,Php,Regex,Preg Match,如何将固定字母与动态数字进行预匹配 例如 获取两个数字的代码是否为任何字符串(例如1和0)的开头 我要做的是匹配文件中的所有字符串,这些字符串看起来像…r00、r01、r02、r03…等等,直到例如r999为止 我试着做的是 #r^[1-9][0-9]*$# *这是使用Preg_Match完成的 但是它不起作用。有什么帮助/建议吗?如果您想停在r999,请尝试此模式: #^r[0-9]{2,3}$# 这将匹配: 字符串的开头(^) 文字r 从0到9的两位或三位数字 字符串的结尾($) 或

如何将固定字母与动态数字进行预匹配

例如

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

我要做的是匹配文件中的所有字符串,这些字符串看起来像…r00、r01、r02、r03…等等,直到例如r999为止

我试着做的是

#r^[1-9][0-9]*$#
*这是使用Preg_Match完成的


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

如果您想停在
r999
,请尝试此模式:

#^r[0-9]{2,3}$#
这将匹配:

  • 字符串的开头(
    ^
  • 文字
    r
  • 从0到9的两位或三位数字
  • 字符串的结尾(
    $
或者,如果没有上限,也就是说,
r999999
是可接受的:

#^r[0-9]{2,}$#
这将匹配:

  • 字符串的开头(
    ^
  • 文字
    r
  • 0到9之间的两个或多个数字
  • 字符串的结尾(
    $
使用模式:

#^r\d{2,3}$#
请参阅。

^
表示“行的开始”,除非在括号内使用,当它表示“除以下字符外的所有字符”时

您需要类似于
#r\d{2,3}
,可以选择先使用
^
,或最后使用
$
(哈希除外)。

我的2美分:

\br\d{1,3}\b

它将匹配r0、r00、r01、r02、r03…r999,但不是
r\d{4,}
^
=字符串的开头,
r^
逻辑上表示“r”后跟字符串的开头,这在逻辑上是不可能的。您可能需要类似于
^r[0-9]{0,3}$
(您似乎也希望允许启动
0
,因此请删除
[1-9]
start)。您的代码将不匹配
r0x
像OP请求的那样:
r00、r01、r02、r03…等等,直到例如r999
\br\d{1,3}\b