输入是John Doe,期望的输出是Doe,John。糟糕的输入是John Smith Doe
我的代码是
if ($input =~ m/([A-Z][a-z]*)\s([A-Z][a-z]*)$/){
print "$2, $1";
}
它与John Doe一起使用,但当John Smith Doe进入时,我想显示一条错误消息,但我的代码显示了Doe,Smith。我做错了什么?
答案 0 :(得分:2)
你几乎就在那里,你需要使用匹配行元字符开头(^
):
if ($input =~ /^([A-Z][a-z]*)\s([A-Z][a-z]*)$/){
print "$2, $1";
}