Pattern与Matcher类

简介: Java提供了专门用来进行模式匹配的Pattern类和Matcher类,这些类在java.util.regex包中。 模式对象 pattern p = Pattern.compile("abc");//Pattern类调用compile(String regex)返回一个模式对象,其中regex是一个正则表达式。

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月前
|
Java
Pattern类和Matcher类的使用
本文介绍了如何使用Java中的Pattern和Matcher类来匹配字符串,并提供了示例代码来演示如何找到并输出匹配的字符串。
19 1
|
JavaScript 前端开发 Java
Java正则表达式(Pattern、Matcher)
1.常用正则标记(熟记*)、2. 基础案例搭配Sting的常用方法、3.正则表达式java.util.regex包支持、4.练习巩固
146 0
|
SQL
C++11之正则表达式(regex_match、regex_search、regex_replace)
C++11之正则表达式(regex_match、regex_search、regex_replace)
186 0
|
设计模式 安全 Java
设计模式|从Visitor Pattern说到Pattern Matching
在软件开发领域,我们每次遇到的问题可能都各不相同,有些是跟电商业务相关的,有些是跟底层数据结构相关的,而有些则可能重点在性能优化上。然而不管怎么样,我们在代码层面上解决问题的方法都有一定的共性。有没有人总结过这些共性呢?
设计模式|从Visitor Pattern说到Pattern Matching
|
机器学习/深度学习 移动开发 安全
正则表达式【Pattern 】
public final class Pattern extends Object implements Serializable
143 0
|
Java 设计模式
Java Filter Pattern(过滤器模式)
过滤器模式(Filter Pattern)或标准模式(Criteria Pattern)是一种设计模式,这种模式允许开发人员使用不同的标准来过滤一组对象,通过逻辑运算以解耦的方式把它们连接起来。
1127 0