我有一个搜索结果,我想标出字符串匹配的位置。
以前我是用 stripos 做的,只是保存了偏移量等,但是当我开始在包含 html 的字符串中搜索时,事情就搞砸了。
因此,我将有一个我想在文本中标记的单词列表(可能包含 HTML)。
所以,我想在文本中找到不是“html”语法的单词。例如,我正在寻找的字符串是 'b' 然后:
A b<abc>c
应转换为
A <font style="color:red;">b</font><abc>c
并不是:
A <font style="color:red;">b</font><a<font style="color:red;">b</font>c>c
问题是我不能制作那个正则表达式。我最好的尝试是:
preg_replace('/(?<!<)(b)(?!>)/', '<font style="color:red;">$1</font>', 'How will this be?<abncds>Now?<br>');
但这并没有捕捉到它只有在 b 靠近 a < ofc 时才会捕捉到。但是添加一个惰性匹配,例如 .*? 也不起作用。
帮助!:)