gpt4 book ai didi

java - 如何从 BIG HTML 字符串中删除一些标签?

转载 作者:行者123 更新时间:2023-11-30 00:40:05 25 4
gpt4 key购买 nike

我需要处理一些 HTML 标签(删除它们)

此 HTML 以 .txt 格式存储在我应用的 Assets 文件夹中

这个 HTML 太大了(大约 7.000 多行),我无法将它存储到一个简单的字符串变量中...

我正在使用此代码将 .txt 转换为 ArrayList:

InputStream is;

try {
is = getAssets().open("html.txt");
} catch (IOException e) {
e.printStackTrace();
}

BufferedReader br = new BufferedReader(new InputStreamReader(is));

String strLine;

List<String> stringList = new ArrayList<>();
try {
while ((strLine = br.readLine()) != null) {
stringList.add(strLine);
}
} catch (Exception e) {
e.printStackTrace();
}

这样,我猜 .txt HTML 中的每一行都存储为 stringList 的元素...但是我如何删除想要的标签,因为它的开头和结尾可能在不同的行中?

如果不可能,我想知道这个问题的任何解决方法...提前致谢!

编辑:

我想进行修改,例如从页面中删除所有链接,例如 <a href="url"><a>

另外,我想删除标签 <title> ... 恢复:这些不是很大的修改...

我已经在我的一个项目中使用了 JSoup...但它只是将 HTML 存储为文档...要使用标签,作为文档类型中的 HTML 是否值得?我如何转换 JSoup 文档中的 .txt 文件?

最佳答案

假设您真的不能将所有内容都存储在一个大字符串中(或者您不想这样做),提取可能跨行的内容将是一个问题,是的。

您是否考虑过查看 HTML 解析器,而不是跳到字符串列表,最好是支持流和修改的解析器?

您可能考虑使用 HTML 解析器的原因是,手动搜索 HTML 中的标签可能无法考虑您可能遇到的所有潜在场景(注释掉 HTML 标签和 HTML 解析器可以为您处理的其他内容)。

关于java - 如何从 BIG HTML 字符串中删除一些标签?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42680914/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com