PHP函数:
function b($text) {
$body="<b>$text</b>";
return $body;
}
Preg_Replace:
function replaceTags($body) {
$body = preg_replace('!\[b](.*?)\[\/b\]!Uei', "''.b('$1','$2').''", $body, -1);
return $body;
}
该代码有效......在一定程度上。它显然每次都仅限于第一个实例。我在复制代码时不小心弄坏了它,将它相互插入,并以粗体显示内部标签。
例子:
*Code:* [b]This is Hi.[/b] Hello world. [b]This is Hi2.[/b]
*Output:* **This is Hi.[/b] Hello world. [b]This is Hi2.**
我不熟悉使用preg_replace。我认为该模式略有偏差或可能遗漏了一些东西。这就是为什么它只显示第一个实例。我也尝试过使用 MySQL 查询,并且也仅限于一行。
我正在尝试为用户端使用简单的标记,但如果需要,我想使用 MySQL 查询作为自定义标签(同样,有效,但只显示第一条记录)。
谢谢。非常感谢任何帮助或建议。