我正在使用一个代码来查找类似的单词,例如,如果用户搜索单词“hello”,它也会找到单词“hellö”
但是当我尝试在结果中突出显示搜索字符串时,它只突出显示“你好”,即使它已找到“hellö”
代码:
$StrSQL = "SELECT `text` FROM `articles` WHERE $strCondition ORDER BY $strOrderBy";
foreach ($dbh->query($StrSQL) as $row) {
$text = $row['text'];
$searchvalue2 = $row['text'];
//to highlight entire unicode word
$searchvalue2 = preg_replace("/\p{L}*?".preg_quote($query)."\p{L}*/ui", "<b>$0</b>", $searchvalue2);
echo "<br>".$searchvalue2."<br>";
$ strCondition的回声是这样的:
( REPLACE(text, 'ـ', '') REGEXP 'hell(ö|o|ô)')
我怎样才能突出显示你好hellö和hellô,而不仅仅是确切的$查询.. 有人可以帮忙吗?