U2KMedlem sedan jan. 2000231 inlägg
Detta skulle vara bra om det kunde fungera. såg Web-Tors inlägg med highlight funktionen gjord med preg_replace.
Exakt en sådan skulle jag vilja ha men den som han hade fungerade inte så bra.
<?
function highlight ($str, $Search){
if (isset($Search))
$str = preg_replace ( "/(.*?)(" . $Search . ")(.*?)/is", "\1<b>\2</b>\3", $str );
return $str;
}
?>
<?=highlight($row[0], $Search)?>
Detta händer...
EX:
$str = "Detta är en text där texten inte har något sammanhang";
med highlight funktion..
RESULTAT:
$str = "";
´
Så här är min tanke på hur det ska se ut.
SÅHÄRSKADETVARA:
$str = "Detta är en <b>text</b> där <b>text</b>en inte har något sammanhang";
Någon som har lösningen..?
nicclasMedlem sedan feb. 20001 061 inlägg
Du saknar några backslash i din kod (det verkar som om [PHP]-taggen här på wF tar bort dem :( )
Så här skall det vara:
<?
function highlight ($str, $Search){
if (isset($Search))
$str = preg_replace ( "/(.*?)(".$Search.")(.*?)/mis", "\\1<b>\\2</b>\\3", $str );
return $str;
}
$str = "Detta är en text där texten inte har något sammanhang";
$Search="text";
echo highlight($str, $Search);
?>
MungoMedlem sedan jan. 2000376 inlägg
Jag har också märkt att PHP-funktionen här på wF strippar lite backslash och sånt. Inte så bra kanske...
U2KMedlem sedan jan. 2000231 inlägg
Jag kom på det faktiskt själv :)
Kollade igenom lite preg_replace kod i manualen och fattade att det skulle vara \\ istället för \.
Nu fungerar den fint. Tack ändå för all hjälp