Regex 如何在perl中不匹配行的某些部分中的空格
我有一句话:Regex 如何在perl中不匹配行的某些部分中的空格,regex,perl,Regex,Perl,我有一句话: $lines = AC P00450; Q14063; 我需要使用正则表达式只匹配AC之后的字符串的一部分。我使用以下代码: if ($lines =~ /^AC(.*)/) { print $1, "\n"; } 它给了我以下输出: P00450; Q14063; 我如何调整我的正则表达式,使其不匹配AC之后、P00450之前的空格,只返回P00450;Q14063;前面没有空格?我知道我获得输出是因为.*匹配任何类型的字符。这基本上就是我想要的,但是在P
$lines = AC P00450; Q14063;
我需要使用正则表达式只匹配AC之后的字符串的一部分。我使用以下代码:
if ($lines =~ /^AC(.*)/) {
print $1, "\n";
}
它给了我以下输出:
P00450; Q14063;
我如何调整我的正则表达式,使其不匹配AC之后、P00450之前的空格,只返回P00450;Q14063;前面没有空格?我知道我获得输出是因为.*匹配任何类型的字符。这基本上就是我想要的,但是在P00450之前没有空格 排除一个或多个空白
if ($lines =~ /^AC\s+(.*)/)
排除一个或多个空白
if ($lines =~ /^AC\s+(.*)/)
如果($lines=~/^AC\s+(.*)/)
?是$line
还是$lines
?并且您显示的正则表达式模式将与该字符串不匹配,因为^
锚定到字符串的开头,而AC
不会出现在开头。如果($lines=~/^AC\s+(.*)/)
?是$line
还是$lines
?您显示的正则表达式模式将与该字符串不匹配,因为^
锚定到字符串的开头,而AC
不会出现在开头。