Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php preg_替换为两个类似的单词_Php_Regex_Preg Replace - Fatal编程技术网

Php preg_替换为两个类似的单词

Php preg_替换为两个类似的单词,php,regex,preg-replace,Php,Regex,Preg Replace,我对斯洛伐克语中两个非常相似的表达有问题。我试图替换html链接的表达式,下面是我的示例代码。我在数组中有大约90个单词 // mysql query above. for($i=1;$i<=$datas[1];$i++) { $regex[] = '/('.htmlentities($rows['title'], ENT_QUOTES, 'UTF-8').')/i'; $wrl[] = '<a href="'.URL.'link/'.urlencode($rows['ali

我对斯洛伐克语中两个非常相似的表达有问题。我试图替换html链接的表达式,下面是我的示例代码。我在数组中有大约90个单词

// mysql query above.
for($i=1;$i<=$datas[1];$i++) {
  $regex[] = '/('.htmlentities($rows['title'], ENT_QUOTES, 'UTF-8').')/i';
  $wrl[] = '<a href="'.URL.'link/'.urlencode($rows['alias']).'" class="underscored">'.strtolower($rows['title']).'</a>';
}
$content = preg_replace($regex, $wrl, $content);
//上面的mysql查询。

对于($i=1;$i,您可以使用
\W
:

$regex[] = '/\W('.htmlentities($rows['title'], ENT_QUOTES, 'UTF-8').')\W/i';

尝试修改正则表达式,在要替换为链接的短语前后指定单词边界
\b

$regex[] = '/\b('.htmlentities($rows['title'], ENT_QUOTES, 'UTF-8').')\b/i';

非常感谢你的建议。