我正在解析网站上的 HTML 代码,并且即将完成。我有网站上需要的文本部分,但有时 HTMl 中包含一些我希望删除的链接。我正在考虑利用这样一个事实:我不想要的所有元素都以 '<' 开头,当然还有以 '>' 开头。有办法做到这一点吗?这就是我到目前为止所拥有的。
for(int i = 0; i<desc.length();i++)
{
if(desc.charAt(i)==('<')){
}
}
desc 是我想要修剪的字符串。
最佳答案
手动解析 XML 和 HTML 等标记语言通常被认为是一个坏主意。但是,如果您只是尝试删除所有元素,我可以看到一个简单的脚本可能有用的地方。
我认为值得一提的是,如果删除 HTML 的所有元素,可能会将多段文本挤在一起。查看这段代码,看看是否有帮助。
public class RemoveHtmlElements {
public static void main(String[] args) {
String html = "<!DOCTYPE html><html><body><h1>My First Heading</h1>"
+ "<p>My first paragraph.</p></body></html>";
boolean elementsExist = true;
while(elementsExist) {
if(html.contains("<")) {
int open = html.indexOf("<");
int closed = html.indexOf(">", open);
html = html.substring(0, open) + " " + html.substring(closed + 1);
} else {
elementsExist = false;
}
}
System.out.println(html);
}
}
这应该清除 HTML 中任何括号内的元素。它将输入一个空格,并在其中删除一个元素,以防止文本意外地挤在一起。
关于java - 从字符串中删除段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20483908/