在大多数情况下使用正则的时候,我们都会采用 String 类完成,但是正则最原始的开发包是:java.util.regex 包,在这个包中,提供有两个类:Pattern类 与 Matcher类。
Pattern类
Pattern 类的常用方法
方法 | 类型 | 描述 |
---|---|---|
public static Pattern compile(String regex) | 普通 | 指定正则表达式 |
public Matcher matcher(CharSequence input) | 普通 | 返回 Matcher 类型的实例 |
public String[] split(CharSequence input) | 普通 | 字符串拆分 |
Matcher类
在 Pattern 类中如果要取得 Pattern 类实例,则必须要调用 compile() 方法。如果要样子一个字符串是否符合规范,这可以使用 Matcher 类。
Matcher 类的常用方法
方法 | 类型 | 描述 |
---|---|---|
public boolean matches() | 普通 | 执行验证 |
public String replaceAll(String replacement) | 普通 | 字符串替换 |
import java.util.Arrays;
import java.util.regex.Pattern;
public class RegexDemo {
public static void main(String[] args) {
String str = "dsajgl11dsdgjdl1242ddfdsa33";
String regex = "\\d+";
// 返回Pattern对象
Pattern pat = Pattern.compile(regex);
// 根据数字拆分
String data[] = pat.split(str);
System.out.println(Arrays.toString(data)); // [dsajgl, dsdgjdl, ddfdsa]
}
}