标签: regex perl
我有一个像flavius.david@yahoo.com这样的电子邮件地址。 我想提取“大卫”。我试过这个
`"m[^([^.]*)-([^+]*)\@.*$];"` print " $&\n";
但是,结果只是“。”
答案 0 :(得分:2)
您可以使用此正则表达式:
/[^.]+(?=@)/
RegEx Demo
答案 1 :(得分:2)
这取决于你还在做什么,但我会写一些像
my @names = $email =~ /\w+/g; my $sname = $names[1];
答案 2 :(得分:0)
如果你需要这两个部分,你的原始正则表达式很接近,但应该是:
^([^.]*)\.([^@]*)@.*$
RegEx Playground