答案 0 :(得分:4)
您可以使用正面外观来验证@
前面是字符串的空格或开头。
(?<= |^)@[\w\d]+
(?<= |^)
正面看后面。确保@
前面有
空格或^
字符串的开头。不是前瞻,不消耗任何字符,只是检查。示例强>
$string = "My name is @john_doe from test@test.com";
preg_match("/(?<= |^)@[\w\d]+/", $string, $matches);
print_r($matches);
// Array (
// [0] => @john_doe
// )
答案 1 :(得分:2)
答案 2 :(得分:0)
您只需添加 ^ 即可。所以正则表达式看起来像/^@[\w\d]+/g
答案 3 :(得分:0)
只需要添加一个术语来检查@是在开始
/ ^ @ [\ W \ d] + /克