[英]Java get specific part of HTML
我正在遍历HTML的负载,并且试图提取我需要的部分。
我只需要从下面的html中获取“ THISISTHEBITIWANT”即可。
<li class="aClass">
<a href="example/THISISTHEBITIWANT">example</a>
</li>
<li class="aClass">
<a href="example/THISISTHEBITIWANT">example2</a>
</li>
每次我只想获取“ THISISTHEBITIWANT”,链接中的文本就会更改。 我已经看过字符串替换-但由于我不知道每次都使用“ example”或“ example2”,因此目前只能删除直到“ example /”。
这是我的Java代码:
html = inputLine.replace("<li class=\"aClass\"><a href=\"/example/", "");
如果有人可以提供任何建议,将不胜感激!
虽然处理HTML的标准方法是使用HTML解析库,但正如两个注释所暗示的那样,如果您真的只对获取想要的内容感兴趣,那么使用正则表达式就足够了。
import java.util.regex.*;
public class Regular{
public static void main(String[] args) {
String original = "<li class=\"aClass\">\n<a href=\"example/THISISTHEBITIWANT\">example2</a>\n</li>";
Pattern mypattern = Pattern.compile("<li class=\"aClass\">\\s+<a href=\"example/([^\"]+)\"");
Matcher matcher = mypattern.matcher(original);
while (matcher.find()) {
System.out.println(matcher.group(1));
}
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.