【问题标题】:Substring a String at 90% without breaking HTML using Java使用 Java 在不破坏 HTML 的情况下以 90% 对字符串进行子串化
【发布时间】:2012-01-11 02:02:46
【问题描述】:

什么是创建方法的最佳解决方案,该方法将采用包含 HTML 的字符串并切断最后一个让我们说 10% 的字符串但不破坏任何 HTML 标签。

body 和 header 标签不是 HTML 字符串的一部分。

此外,四舍五入应该向上发生,所以 lats 说如果 HTML 应该保持不变,那么最后 10% 会缩小到 5%,而不是方法应该削减 HTML 的乞求并执行 15% 的削减,这将是乞求标签。

我正在考虑为此使用Jsoup。问题是字符串可能没有被 HTML 元素包围。它可能只是一个包含几个链接的文本。

【问题讨论】:

    标签: java html string substring


    【解决方案1】:

    我觉得Jsoup的做法刚刚好,把页面底部的元素去掉,每一步都检查它的字符串长度,直到达到一个满意的数字。

    要逐个删除元素,您可以使用remove method,然后将原始字符串长度与 HTML 文档的当前字符串长度进行比较。我没有看到任何效率问题。

    【讨论】:

    • @MatBanik 只需将使用 toString 方法生成的字符串的长度与表示 HTML 文档的原始字符串的长度进行比较。
    • 尝试运行 W3C Validator validator.w3.org,也许 Jsoup 无法在其父元素损坏时发现元素?!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-07-24
    • 1970-01-01
    • 2020-11-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-15
    相关资源
    最近更新 更多