我期望的输出是:
Sub content here
Main content here
我试过使用正则表达式,但结果并不那么令人印象深刻.
通过使用:
Pattern.compile("
会在第一个< * / div>之前返回所有字符串塔索,有人可以帮我吗?
最佳答案
我建议避免使用正则表达式来解析HTML.您可以使用Jsoup轻松完成您的要求:
public static void main(String[] args) {
String html = "
回应评论:如果你想将div元素的内容放入一个字符串数组中,你可以简单地做:
String[] divsTexts = new String[divs.size()];
for (int i = 0; i < divs.size(); i++) {
divsTexts[i] = divs.get(i).ownText();
}
作为对注释的回应:如果你有嵌套元素,并且你想为每个元素获得自己的文本,那么你可以使用jquery多选择器语法.这是一个例子:
public static void main(String[] args) {
String html = "
上面的代码将解析以下HTML:
并打印以下输出:
Main content here
Sub content here
a paragraph
with some bold text