我正在对包含 HTML 字符串的变量执行 str_replace。目的是将“data-rel="external" target="_blank"" 添加到所有 a-href 中。
$html = str_replace("<a href=", "<a data-rel=\"external\" target=\"_blank\" href=", $html);
它工作正常,但挑战在于:如果原始 a-href 是 a-href="mailto:[..],那么它应该添加“data-rel="external" target="_system"”。
例子:
<a href="http://apache.org">Link 1</a>
应该变成:
<a data-rel="external" target="_blank" href="http://apache.org">Link 1</a>
和
<a href="mailto:post@apache.org">Link 2</a>
应该变成:
<a data-rel="external" target="_system" href="mailto:post@apache.org">Link 2</a>
任何想法如何解决这个问题?