【发布时间】:2013-04-16 20:51:36
【问题描述】:
在我当前的模板中,我有一大段来自用户的文本。然后该块在 600 个字符标记处拆分并放置到页面上的特定 div 中,该块的其余部分放置在页面底部附近。这工作正常,但是当在帖子开头附近添加了很多链接时会出现问题。
<a href='...'></a> 被计入总字符数。我总是想在 600 分块。
有没有一种简单的方法可以让我找出 html 字符的长度?这样我就可以将它们添加到 split_length 中。或任何其他想法?完全忽略html字符的方法?
编辑: 我应该清楚我希望链接保留...
【问题讨论】:
-
如果文本包含 HTML,则需要 HTML 解析器来拆分它,否则会得到不平衡的标签。您也可以隐藏 N 像素以下的所有内容而不是拆分,这要容易得多。
-
这不是小事。 RegEx 和 HTML 解析器都不会在这里为您提供太多帮助。如果我自己尝试这样做,我可能会
strip_tags最初检查有超过 600 个字符,然后逐个字符地遍历原始字符串,跟踪我是否可数(或在标签中),以及什么标签是“打开”(这样我可以在拆分后关闭它们)。然后继续走,直到数完 600 个可数数。