我有一个功能:
function ColoredQuote($string) {
$buffer = preg_replace('/>.+/', '<span class=quote>$0</span><br />', $string);
return $buffer;
}
当只有一个简单的字符串我想格式化它时效果很好。但是我想让这个函数只在带有&gt;的字符串时起作用mark在新行之后以及在其末尾有第二个新行标记。我还想在&gt;之后立即阻止空间。标记。我正在尝试添加\ n,^标记和其他可能有用的但它不起作用。
因此模式应如下所示:
[br]>any text[br]
这是画板上流行的引用方法
答案 0 :(得分:0)
要替换以>
开头的所有行,请将正则表达式更改为:
$buffer = preg_replace('/^>.+$/', '<span class=quote>$0</span><br />', $string);
^
表示开始行
$
表示行尾
答案 1 :(得分:0)
好的,我是自己做的,所以对于那些会发现它有用的人来说:
function ColoredQuote($string) {
$buffer = preg_replace('!\>\S.+!', '<br /><span class=quote>$0</span><br />', $string);
return $buffer;
}