Java利用正则取标签之间的数据
更新时间:2020年08月19日 11:31:23 作者:lip86
这篇文章主要介绍了Java利用正则取标签之间的数据,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
我就废话不多说了,大家还是直接看代码吧~
String str = "哈哈<font color='red'>1111</font>还是你牛<font color='red'>11111</font> ";
String regStr = "<font color='red'>(.*?)</font>";
Pattern pattern = Pattern.compile(regStr);
if(str != null){
Matcher m = pattern.matcher(str);
while(m.find()){
String group = m.group(1);
System.out.println(group);
str = str.replaceAll(regStr, "***");
}
System.out.println(str);
}
结果:
1111 11111 哈哈***还是你牛***
补充知识:java正则获取字符前后数据
使用Java正则获取指定字符前或者后数据:
代码如下:
<pre name="code" class="java">public class RegTest {
//字符串截取
public static String regComp(String item) {
String num = "";
// 替换中文
String reg = "[\\u4e00-\\u9fa5]+";
//截取λ|入后面数字
String comp1 = "[\\s\\S]*([λ|入]\\d*)[\\s\\S]*";
//截取波|第前面数字
String comp2 = "(\\d+[波|第])";
if (item.matches(comp1)) {
num = item.replaceFirst(comp1, "$1").replaceAll(reg, "").replace("λ", "");
} else {
Pattern p = Pattern.compile(comp2);
Matcher m = p.matcher(item);
if (m.find()) {
num = m.group(1).replaceAll(reg, "");
}
}
return num;
}
/**
* @Description: TODO(这里用一句话描述这个类的作用)
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String str1 = "石家庄(至郑州)架1-2-23-OTU3S-1(OTU3S 1波).OCH)";
String str3 = " 北京东四1-1-4D-OTU3S-1(OTU3S 100第三个).OCH";
String str2 = " 北京东四1-1-4D-OTU3S-1(OTU3S 入12).OCH";
String str4 = " 北京东四1-1-4D-OTU3S-1(OTU3S λ12334).OCH";
String[] array = { str1, str2, str3,str4 };
for (int i = 0; i < array.length; i++) {
//测试
String num = regComp(array[i]);
System.out.println(num);
}
}
}
输出结果:
1 12 100 12334
以上这篇Java利用正则取标签之间的数据就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
Springboot如何通过yml配置文件为静态成员变量赋值
这篇文章主要介绍了Springboot如何通过yml配置文件为静态成员变量赋值,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2022-10-10
IDEA2023 Maven3.9.1+Tomcat10.1.8配置并搭建Servlet5.0的框架实现
本文主要介绍了IDEA2023 Maven3.9.1+Tomcat10.1.8配置并搭建Servlet5.0的框架实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2023-07-07


最新评论