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

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

String str = "哈哈1111还是你牛11111 ";

String regStr = "(.*?)";

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正则获取指定字符前或者后数据:

代码如下:

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利用正则取标签之间的数据就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值