Java正则表达式提取文本
小技巧:可以在IDEA看到分组的值

public class test {
private String content =
"<ul>\n"
+ " <l1>北京Beijing</l1>\n"
+ " <l1>上海Shanghai</l1>\n"
+ " <l1>新疆维吾尔自治区Xinjiang</l1>\n"
+ "</ul>";
@Test
void regex() {
//1 ,创建正则表达式对象
Pattern compile = Pattern.compile("\\<l1\\>([\\u4e00-\\u9fa5]{2,})([A-Za-z]+)\\<\\/l1\\>");
//2 , 匹配正则表达式(将整理的字符串按正则表达式规则选取)
Matcher matcher = compile.matcher(content);
//3 , 查找匹配的结果
while (matcher.find()) {
String chs = matcher.group(1);//第一组的内容
String eng = matcher.group(2);//第二组的内容
System.out.println(chs + " - " + eng);
}
}
}
output
北京 - Beijing
上海 - Shanghai
新疆维吾尔自治区 - Xinjiang