如何匹配以下字符串中的数字?
pe01058pr04
pe1234pr03
我们可能会得到4位数或5位数,如上所示。
我尝试了以下正则表达式:
.*([0-9]{4,5}).*
但是它只能匹配4位数字。
我需要为“ pe01058pr04”匹配5位数字-> 01058
我需要为“ pe1234pr03”-> 1234匹配4位数字
答案 0 :(得分:2)
您可以只使用\d{4,5}
来匹配4位或5位数字。
此外,您的正则表达式确实与group1中的所有五位和四位数字匹配。 See this但是为什么不像我上面建议的那样简单地使用\d{4,5}
?a
答案 1 :(得分:2)
my ($first_sequence_of_digits) = $string =~ /(\d+)/;