我有一个我想要匹配的数据列表:
0:1
0:3
0:-1
0:2
0:-4
我可以使用什么正则表达式来匹配所有正则表达式:
我试过这个但不行:
$line =~ /0:(\w+)/
它只匹配积极因素。
答案 0 :(得分:5)
\w
用于单词符号:字母,数字和下划线。这意味着除了0:34
之外,你的正则表达式将匹配像0:hello
这样的smth,但不会匹配减号符号。
如果您只需要数字,则/0:-?\d+/
应该有效。如果您需要匹配整个字符串(以过滤掉a0:-3b
等字符串,您可以使用/^0:-?\d+$/
。
答案 1 :(得分:1)
$line =~ /0:[-]?[0-9]