[code="java"]
import org.htmlparser.Node;
import org.htmlparser.Parser;
import org.htmlparser.filters.RegexFilter;
import org.htmlparser.util.NodeIterator;
import org.htmlparser.util.NodeList;
import org.htmlparser.util.ParserException;
public class HTMLParserMain {
public static void main(String [] args)
{
String htmlPath = "D:\\test.html";
try {
String reg = "[2,6]";
Parser parser = new Parser(htmlPath);
RegexFilter filter = new RegexFilter ("td_"+reg+"{1,}");
NodeIterator iterator = parser.extractAllNodesThatMatch (filter).elements ();
Node node;
Node np;
NodeList nlist;
while(iterator.hasMoreNodes()){
node = iterator.nextNode();
nlist =
node
.getParent()
.getParent()
.getChildren();
System.out.println(nlist.elementAt(3).toPlainTextString());
}
} catch (ParserException e) {
e.printStackTrace();
}
}
}
[/code]
反正用RegexFilter,可以这么来做,应该不算很好的方法,但是是个可行的方法,可以根据你给的number生成regex,然后匹配出你要的值