匹配固定字母与动态数字

时间:2013-10-12 14:01:56

标签: php regex preg-match

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

E.g。

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

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

我要做的是匹配文件的所有字符串,例如...... r00,r01,r02,r03 ......等等,直到例如R999

我尝试做的是

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

*这是使用Preg_Match

完成的

然而它不起作用。任何帮助/建议?

4 个答案:

答案 0 :(得分:0)

如果您想停在r999

,请尝试使用此模式
#^r[0-9]{2,3}$#

这将匹配:

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

如果没有上限,则为此模式,即。 r999999是可以接受的:

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

这将匹配:

  • 字符串的开头(^
  • 文字r
  • 0到9之间的两位或更多位数
  • 字符串的结尾($

答案 1 :(得分:0)

使用模式:

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

请参阅explanation

答案 2 :(得分:0)

^表示“行首”,除非它在括号内使用,否则表示“除了后续字符以外的所有内容”。

您需要类似#r\d{2,3}#的内容,首选^或最后$(哈希除外)。

答案 3 :(得分:0)

我的2美分:

\br\d{1,3}\b

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