java正则 实例

本文深入探讨了Java中正则表达式的强大应用,包括替代字符串、截取字符串及分割字符串等操作,并通过具体实例展示如何高效实现这些功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

java的正则很强大,谁用谁知道

 

用到最多的还是ismatch,看看是否符合正则

 

还可以用它替代字符串,过滤非法字符,截取字符串,分割字符串

 

替代字符串:

替代回车符号

 

Pattern ilSingle = Pattern.compile("\r|\n");
String message = "xxxxxx";
message = ilSingle.matcher(message).replaceAll("");

 

 

截取字符串: expected:xxxxxx but was:xxxxxxx

                
                Pattern p = Pattern.compile("(expected:)(.*?)(but was:)(.*)");
		Matcher m = p.matcher(message);
		PigErrorBean bean = new PigErrorBean();
		if(m.find()){
			bean.setExpect(m.group(2));
			bean.setOutput(m.group(4));
		}
		return bean;

 

分割字符串:

   (1,2,3),(6,5,4),(95,54,23),(44,53,54,12,43),(1,2),(2)

               
                 List<List<Object>> paramList = new LinkedList<List<Object>>();
		Pattern pattern = Pattern.compile("(\\()(.*?)(\\))");
		Matcher matcher = pattern.matcher(params);
		boolean hasMatcher = false;
		while (matcher.find()) {
			hasMatcher = true;
			List<Object> list = new LinkedList<Object>();
			String strList = matcher.group(2);
			StringTokenizer st = new StringTokenizer(strList,",");
			while (st.hasMoreElements()) {
				Object param = st.nextElement();
				list.add(param);
			}
			paramList.add(list);
		}
 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值