PHP正则表达式匹配字符串中的多堆马赫数?
如何为特定字符串(带引号)添加签入正则表达式,同时将其优先于包含@(\w+)的正则表达式 @webutvikler@administrator@bugfinder&utvikler@版主@chat-& forummoderator@ideutviklerPHP正则表达式匹配字符串中的多堆马赫数?,php,regex,Php,Regex,如何为特定字符串(带引号)添加签入正则表达式,同时将其优先于包含@(\w+)的正则表达式 @webutvikler@administrator@bugfinder&utvikler@版主@chat-& forummoderator@ideutvikler 我在正则表达式检查中尝试了不同的解决方案,但是像“@bugfinder&utvikler”这样的字符串只返回“@bugfinder”,而不返回字符串的其余部分。可能是这样的? 我在[]括号内添加了\w,并包含空格&和-以使其多次匹配其中任
我在正则表达式检查中尝试了不同的解决方案,但是像“@bugfinder&utvikler”这样的字符串只返回“@bugfinder”,而不返回字符串的其余部分。可能是这样的?
我在[]括号内添加了\w,并包含空格&和-以使其多次匹配其中任何一个 编辑;您需要在输出字符串时对其进行修剪,因为字符串末尾将包含空格。
只需使用
echo trim($matches[0])代码>或类似内容。是在一行中还是在每个标记后都有新行?@3kbest regex按预期返回。你的其他函数有问题我发现了问题,我不得不在第一次输入时使用htmlspecialchars\u解码函数。谢谢你的帮助
<?php
$alphaUsername = array();
preg_match_all("/@(\w+)/", $input, $matches);
if (!empty($matches[1])) {
$alphaUsername = array_map('mysql_escape', $matches[1]);
}
?>
$str = '@webutvikler @administrator @bugfinder & utvikler @moderator @chat- & forummoderator @ideutvikler';
preg_match_all('/@([\w &-]+)/', $str, $matches);