我有这个字符串数组:
array("Foo", "Foo RH 80", "Foo Foo RH 50 Foo", "Foo (RH 80 + 10) foo");
我正在寻找一种方法来添加这样的标签:
array("Foo", "Foo <b>RH 80</b>", "Foo Foo <b>RH 50</b> Foo", "Foo <b>(RH 80 + 10)</b> foo");
我想我可以用一些REGEX做到这一点,但找到这种模式太难了。
有你的想法吗?
答案 0 :(得分:0)
答案 1 :(得分:0)
怎么样:
$str = preg_replace('/\(?\bRH \d+(?: \+ \d+)?\)?/', '<b>$0</b>', $str);
答案 2 :(得分:0)
使用正则表达式的替代方法:
如果字符串的开头始终相同,就像在您的示例中一样,您可以使用简单的字符串函数:
function boldify($pattern, $array){
$new_array = array();
foreach($array as $a) $new_array[] = $pattern."<b>".substr($a,strlen($pattern))."</b>";
return $new_array;
}