Pattern与Matcher类

Java提供了专门用来进行模式匹配的Pattern类和Matcher类,这些类在java.util.regex包中。

模式对象

pattern p = Pattern.compile("abc");//Pattern类调用compile(String regex)返回一个模式对象,其中regex是一个正则表达式。
如果参数rege x指定的正则表达式有错,compile方法将抛出异常PatternSyntaxException。

匹配对象

Matcher m = p.matcher(s);//模式对象调用matcher(CharSequence input)方法返回一个Matcher对象

代码示例

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class Main {
	public static void main(String[] args) {
		String regex = "abc";
		Pattern p = Pattern.compile(regex);
		String s = "abcdf abcgh abc abc 123as";
		Matcher m = p.matcher(s);
		while(m.find()){
			String str = m.group();
			System.out.print("从"+m.start()+"到"+m.end()+"匹配模式子序列:");
			System.out.println(str);
		}
	}
}
输出结果为:
从0到3匹配模式子序列:abc
从6到9匹配模式子序列:abc
从12到15匹配模式子序列:abc
从16到19匹配模式子序列:abc

代码解释

上面这个示例代码实现了在字符串s中找regex子串并输出子串所在的位置。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值