提到PHP正则表达式(@name)
我在这件事上做得很卖力,我试了很多正则表达式,但似乎都做不好。(我在正则表达式方面没有那么丰富的经验) 下面的情况正在发生,让我们以这个基本句子为例提到PHP正则表达式(@name),php,regex,Php,Regex,我在这件事上做得很卖力,我试了很多正则表达式,但似乎都做不好。(我在正则表达式方面没有那么丰富的经验) 下面的情况正在发生,让我们以这个基本句子为例 我最近看到@johndoe骑自行车,你有没有注意到@foobar? 这里的技巧是只从字符串中获取@john doe和@foo bar部分,最好是在数组中: $arr = [ '@john-doe', '@foo-bar' ]; 有人能帮我找到正确的方法吗?你可以使用这个正则表达式(\@(?p[a-zA-Z\-\\\\\\\\\+):
我最近看到@johndoe骑自行车,你有没有注意到@foobar?
这里的技巧是只从字符串中获取@john doe
和@foo bar
部分,最好是在数组中:
$arr = [
'@john-doe',
'@foo-bar'
];
有人能帮我找到正确的方法吗?你可以使用这个正则表达式
(\@(?p[a-zA-Z\-\\\\\\\\\+)
:
<?php
$matches = [];
$text = "I recently saw @john-doe riding a bike, did you noticed that too @foo-bar?";
preg_match_all ("(\@(?P<names>[a-zA-Z\-\_]+))" ,$text, $matches);
var_dump($matches['names']);
您可以使用这个正则表达式(\@(?p[a-zA-Z\-\\\\\\\\\\\\\\\\\+)
:
<?php
$matches = [];
$text = "I recently saw @john-doe riding a bike, did you noticed that too @foo-bar?";
preg_match_all ("(\@(?P<names>[a-zA-Z\-\_]+))" ,$text, $matches);
var_dump($matches['names']);
您具体尝试过哪些正则表达式?粘贴它们,以便在什么时候可以找出您尝试的错误。另外,“提及”允许的字符是什么?/@[\w-]+/
应该做这项工作您做了哪些尝试?看起来像一个简单的regexUse preg_match__allAnd,这就是你的问题。Preg_match适用于一个项目。比赛前一切都是。。不,你可以猜到。你具体试过哪些正则表达式?粘贴它们,以便在什么时候可以找出您尝试的错误。另外,“提及”允许的字符是什么?/@[\w-]+/
应该做这项工作您做了哪些尝试?看起来像一个简单的regexUse preg_match__allAnd,这就是你的问题。Preg_match适用于一个项目。比赛前一切都是。。不,你可以猜得到。[\w-]
应该足够了。@ctwheels可能有很多路通往罗马。你的解决方案很有魅力,@Nicolas@丹尼斯明克很高兴我能帮上忙@Nicolas如果我想避免电子邮件怎么办?如果我写test@mymail.com它将mymail检测为name[\w-]
应该就足够了。@ctwheels可能有很多路通往罗马。你的解决方案就像一个魔咒,@Nicolas@丹尼斯明克很高兴我能帮上忙@Nicolas如果我想避免电子邮件怎么办?如果我写test@mymail.com它将mymail检测为名称