Как обрабатывать закрывающие теги (например: </h1>
) с помощью библиотеки HTML-анализатора Java?
Например, если у меня есть следующее:
public class MyFilter implements NodeFilter {
public boolean accept(Node node) {
if (node instanceof TagNode) {
TagNode theNode = (TagNode) node;
if (theNode.getRawTagName().equals("h1")) {
return true;
} else {
return false;
}
}
return false;
}
}
public class MyParser {
public final String parseString(String input) {
Parser parser = new Parser();
MyFilter theFilter = new MyFilter();
parser.setInputHTML("<h1>Welcome, User</h1>");
NodeList theList = parser.parse(theFilter);
return theList.toHtml();
}
}
Когда я запускаю свой анализатор, я получаю следующий вывод:
<h1>Welcome, User</h1>Welcome, User</h1>
NodeList содержит список размера 3 со следующими объектами:
(tagNode) <h1>
(textNode) Welcome, User
(tagNode) </h1>
Я бы хотел, чтобы вывод был "<h1>Welcome, User</h1>
". Кто-нибудь видит, что не так в моем примере парсера?