我正在尝试突出显示(粗体)单词中的某些字符。我用相同的字符加上粗体标签 <b></b>
替换该字符。当我更改第一个字符时,它是小写的。我希望这成为资本。但由于它周围有粗体标签,我无法使用 ucfirst()。我已经成功了,但我想知道这是否可以更容易地完成?
来自:测试
致:测试测试测试
<?php
$str = 'Testing';
$key = 'T';
$bold = str_ireplace($key , "<b>". $key ."</b>", $str);
$allLower = strtolower($bold);
$arr = str_split($allLower);
if($arr[0] == '<'){
$arr[3]= ucfirst($arr[3]);
}else{
$arr[0]= ucfirst($arr[0]);
}
$string = null;
foreach($arr as $value){
$string .= $value;
}
echo $string;
?>
最佳答案
您可以使用preg_replace
来做到这一点:
preg_replace('/t/i', '<b>$0</b>', 'Testing');
/t/i
末尾的 i
代表不区分大小写的匹配,$0
代表替换中匹配的模式。
希望这有帮助。
关于php - 突出显示word中的字符,保留大写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36577108/