Regex Perl:为什么这种模式匹配?
为什么下面的模式匹配成功?我错过什么了吗Regex Perl:为什么这种模式匹配?,regex,perl,Regex,Perl,为什么下面的模式匹配成功?我错过什么了吗 $a="pattern"; if($a =~ /[0-9]*/){ print "Contains\n"; } *量词匹配0或更多。而且模式与零位数完全匹配 您可能希望使用+,这将表示匹配1次或多次 引用自perldoc perlre的: 量词 可识别以下标准量词: *匹配0次或更多次 +匹配1次或更多次 ? 匹配1或0次 {n} 精确匹配n次 {n,}至少匹配n次 {n,m}至少匹配n次但不超过m次 量词与0或更多匹配。而且
$a="pattern";
if($a =~ /[0-9]*/){
print "Contains\n";
}
*
量词匹配0或更多。而且模式与零位数完全匹配
您可能希望使用+
,这将表示匹配1次或多次
引用自perldoc perlre的:
量词
可识别以下标准量词:
*匹配0次或更多次
+匹配1次或更多次
? 匹配1或0次
{n} 精确匹配n次
{n,}至少匹配n次
{n,m}至少匹配n次但不超过m次
量词与0或更多匹配。而且模式与零位数完全匹配
您可能希望使用+
,这将表示匹配1次或多次
引用自perldoc perlre的:
量词
可识别以下标准量词:
*匹配0次或更多次
+匹配1次或更多次
? 匹配1或0次
{n} 精确匹配n次
{n,}至少匹配n次
{n,m}至少匹配n次但不超过m次
使用*
作为量词表示零个或多个实例。在这种情况下,它在目标字符串的p
之前的位置与零匹配
要匹配至少一个数字,请使用+
量词。使用*
作为量词表示零个或多个实例。在这种情况下,它在目标字符串的p
之前的位置与零匹配
要匹配至少一个数字,请使用+
量词。愚蠢的我。忘记了*的基本含义。谢谢!我真傻。忘记了*的基本含义。谢谢!