Jen*_*aiz 0 regex perl parsing text
如果我有一个字符串,例如:
JOURNAL Yeast 10 (11), 1503-1509 (1994)
Run Code Online (Sandbox Code Playgroud)
如何获得括号中的两个数字(11和1994)?我尝试的一种方法是使用:
/\s+JOURNAL\s+.*\((\d+).*\((\d+))/
Run Code Online (Sandbox Code Playgroud)
但这不起作用。所以我有两个问题:
如何转义括号,以便我可以在RE中使用match?
如何获得上述两个数字?
我正在Perl中执行此操作。谢谢你的帮助 !
您的正则表达式很好,只不过您最后有一个额外)的东西。
$_ = " JOURNAL Yeast 10 (11), 1503-1509 (1994)";
if ( /\s+JOURNAL\s+.*\((\d+).*\((\d+)/ ) {
print "one: $1, two: $2\n";
}
Run Code Online (Sandbox Code Playgroud)
如果要明确确定数字后有括号,则:
/\s+JOURNAL\s+.*\((\d+)\).*\((\d+)\)/
Run Code Online (Sandbox Code Playgroud)