使用Code Igniter框架,我正在使用Peeker
库检索电子邮件。有时我不接收HTML
内容,只收到电子邮件的plain text
。
对于纯文本,我想将\r\n
替换为<br>
,而不是替换为HTML内容。
我从function
获得了以下SO
来检查内容是否为HTML:
function is_html($string)
{
return preg_match("/<[^<]+>/",$string,$m) != 0;
}
以下是我收到的一些纯文本文本:
On 5/15/15, Mr.X wrote:
> Mr. Y,
>
> Congratulations! Your book has been approved by our Editorial Board for
> Publishing. Please send me all the fonts that you have used to type
> your manuscript. Please send me the font names and the font files so that
> we can proceed.......
但该函数也为纯文本返回TRUE
。
如何区分?
答案 0 :(得分:2)
由于我知道将出现<div>
或<table>
标记,因此我对正则表达式进行了以下更改,并且效果非常好。
preg_match("/<tr [\s\S]*?<\/tr>|<table [\s\S]*?<\/table>|<div [\s\S]*?<\/div>",$string) != 0;