我正在努力改善我的现场个人信息系统,让它看起来更漂亮,感觉更像是电子邮件。我目前添加>在每行回复文本之前,但我还想将字体颜色等格式添加到以“>”开头的行中没有引号。我不确定如何用正则表达式关闭线条。要打开它我假设我应该做以下的事情?
$new_text = preg_replace("\> \is", "<font color=\"grey\">> ", $text);
答案 0 :(得分:0)
preg_replace("/^(>.*)$/im", "<span style=\"color: red;\">\\1</span>", $reply);
答案 1 :(得分:0)
ereg_replace('^>(.*)', '<span class="quoted">>\\1</span>', $content);
答案 2 :(得分:0)
preg_replace('/(\n>[^\n]*)+/','<span class="reply">$1</span>', $message);
这样的内容会将引用的回复附上你可以设定的样式。
答案 3 :(得分:0)
除了已经发布的好答案之外,您可能希望在将其视为HTML之前转义捕获的文本。通过简单的替换,引用文本中的某些字符(特别是'&lt;','&gt;'和'&amp;')将使您生成的HTML无效。 (我假设它尚未转义,或者您需要匹配“&gt;”而不是“&gt;”。)
为确保替换产生有效的HTML,您可以执行以下操作:
function quote_markup($matches) {
$quote = htmlspecialchars($matches[1]);
return "<span style=\"color: red;\">$quote</span>",
}
preg_replace_callback("/^(>.*)$/im", 'quote_markup', $reply);