import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "(?s:(<a href=\"onebook\\.php\\?novelid=([\\d]+?)\".*?>(.*?)<\\/a>.*?center\">(.+?)<.*?center\">(.+?)<.*?<td align=\"right\">([\\d]+?)<.*?<td align=\"right\">([\\d]+?)<\\/td>))";
final String string = "<table width=\"986\" border=\"0\" align=\"center\" cellpadding=\"0\" cellspacing=\"0\"\n"
+ " class=\"cytable\">\n"
+ " <tbody>\n"
+ " <tr>\n"
+ " <td width=\"126\" class=\"sptd\">作者</td>\n"
+ " <td width=\"278\" class=\"sptd\">作品</td>\n"
+ " <td width=\"168\" class=\"sptd\">类型</td>\n"
+ " <td width=\"71\" class=\"sptd\">风格</td>\n"
+ " <td width=\"63\" class=\"sptd\">进度</td>\n"
+ " <td width=\"63\" class=\"sptd\">字数</td>\n"
+ " <td width=\"73\" class=\"sptd\">作品积分</td>\n"
+ " <td width=\"138\" class=\"sptd\">发表时间</td>\n"
+ " </tr>\n"
+ " \n"
+ " <tr>\n"
+ " <td align=\"left\">\n"
+ " <a href=\"oneauthor.php?authorid=385748\" target=\"_blank\">君sola</a>\n"
+ " </td>\n"
+ " <td align=\"left\">\n"
+ " <a href=\"onebook.php?novelid=1473506\" target=\"_blank\" title=\"简介:腹黑冰山美御姐与温柔黑化姑娘 标签:\">探虚陵现代篇</a>\n"
+ " </td>\n"
+ " <td align=\"center\">\n"
+ " 原创-百合-近代现代-爱情 </td>\n"
+ " <td align=\"center\">\n"
+ " 正剧 </td>\n"
+ " <td align=\"center\">\n"
+ " 连载中 </td>\n"
+ " <td align=\"right\">2996549</td>\n"
+ " <td align=\"right\">9653954560</td>\n"
+ " <td align=\"center\">2012-03-21 11:25:31</td>\n"
+ " </tr>\n"
+ " <tr>\n"
+ " <td align=\"left\">\n"
+ " <a href=\"oneauthor.php?authorid=1696863\" target=\"_blank\">酒暖春深</a>\n"
+ " </td>\n"
+ " <td align=\"left\">\n"
+ " <a href=\"onebook.php?novelid=4170491\" target=\"_blank\" title=\"简介:为生者权,替死者言 标签:\">我亲爱的法医小姐</a>\n"
+ " </td>\n"
+ " <td align=\"center\">\n"
+ " 原创-百合-近代现代-悬疑 </td>\n"
+ " <td align=\"center\">\n"
+ " 正剧 </td>\n"
+ " <td align=\"center\">\n"
+ " <font color='red'>已完成</font> </td>\n"
+ " <td align=\"right\">878082</td>\n"
+ " <td align=\"right\">3881133568</td>\n"
+ " <td align=\"center\">2019-08-29 20:00:00</td>\n"
+ " </tr>\n";
final Pattern pattern = Pattern.compile(regex, Pattern.MULTILINE);
final Matcher matcher = pattern.matcher(string);
while (matcher.find()) {
System.out.println("Full match: " + matcher.group(0));
for (int i = 1; i <= matcher.groupCount(); i++) {
System.out.println("Group " + i + ": " + matcher.group(i));
}
}
}
}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Java, please visit: https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html