您的位置:首页技术文章
文章详情页

Java利用正则取标签之间的数据

浏览:6日期:2022-08-26 16:57:14

我就废话不多说了,大家还是直接看代码吧~

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);}

结果:

111111111哈哈***还是你牛***

补充知识:java正则获取字符前后数据

使用Java正则获取指定字符前或者后数据:

代码如下:

<pre name='code' class='java'>public class RegTest { //字符串截取public static String regComp(String item) {String num = '';// 替换中文String reg = '[u4e00-u9fa5]+';//截取λ|入后面数字String comp1 = '[sS]*([λ|入]d*)[sS]*';//截取波|第前面数字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);}}}

输出结果:

11210012334

以上这篇Java利用正则取标签之间的数据就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持好吧啦网。

标签: Java
相关文章: