Java 创建自己的html方法以提取标记 规则我不能使用HTML库中的任何东西,需要从头开始创建方法。

Java 创建自己的html方法以提取标记 规则我不能使用HTML库中的任何东西,需要从头开始创建方法。,java,html,Java,Html,给定一个文本文件,其中包含类似于的文本,我需要提取html之间的信息并获取标记。我的方法不断返回数组越界异常,我不确定如何修复这些方法 public static String extractTagContent(String html, String tag) { String list = ""; while (html.contains("</" + tag + ">")) { list += html.substring(html.indexO

给定一个文本文件,其中包含类似于
的文本,我需要提取html
之间的信息并获取标记。我的方法不断返回数组越界异常,我不确定如何修复这些方法

public static String extractTagContent(String html, String tag) {
    String list = "";
    while (html.contains("</" + tag + ">")) {
        list += html.substring(html.indexOf("<" + tag + ">") + tag.length() + 1, html.indexOf("</" + tag + ">")) + "\n";

        html = html.substring(html.indexOf("<" + tag + ">") + tag.length() + 3);
    }
    return list;
}
公共静态字符串extractTagContent(字符串html,字符串标记){
字符串列表=”;
while(html.contains(“”){
list+=html.substring(html.indexOf(“”+tag.length()+1,html.indexOf(“”)+“\n”;
html=html.substring(html.indexOf(“”+tag.length()+3);
}
退货清单;
}

修复了循环中的这两行

list += html.substring(html.indexOf("<" + tag + ">") + tag.length() + 2, html.indexOf("</" + tag + ">")) + "\n";
html = html.substring(0, html.indexOf("<" + tag + ">")) + html.substring(html.indexOf("</" + tag + ">") + tag.length() + 3, html.length());
list+=html.substring(html.indexOf(“”+tag.length()+2,html.indexOf(“”)+“\n”;
html=html.substring(0,html.indexOf(“”)+html.substring(html.indexOf(“”+tag.length()+3,html.length());
全部代码

public static String extractTagContent(String html, String tag) {
    String list = "";
    while (html.contains("</" + tag + ">")) {
        list += html.substring(html.indexOf("<" + tag + ">") + tag.length() + 2, html.indexOf("</" + tag + ">")) + "\n";
        html = html.substring(0, html.indexOf("<" + tag + ">")) + html.substring(html.indexOf("</" + tag + ">") + tag.length() + 3, html.length());
    }
    return list;
}
公共静态字符串extractTagContent(字符串html,字符串标记){
字符串列表=”;
while(html.contains(“”){
list+=html.substring(html.indexOf(“”+tag.length()+2,html.indexOf(“”)+“\n”;
html=html.substring(0,html.indexOf(“”)+html.substring(html.indexOf(“”+tag.length()+3,html.length());
}
退货清单;
}

我的意思是StringIndexOutOFBoundException不超出范围数组如果不能使用任何HTML库,您仍然可以使用Java XML库;-)我认为你们需要阅读Eric Lippert的优秀文章。文本文件包含“大脑邪恶科学家”的内容,标签有什么价值?预期的输出是什么?对于每个类别,如name,我只需要输出brian,我如何修改代码,使其在类似brian邪恶科学家的情况下工作,我希望相同的结果打印出brain和邪恶科学家感谢代码工作的帮助,但不是在这种情况下,不是更容易修复生成这些无序标记的原因吗?