在java中要使用正则表达式,需要用到Pattern类和Matcher类,两个类都在java.util.regex包中定义。Pattern类用于正则表达式的规范,Matcher类用于执行正则规范。
String str = "1899-09-23";
String pat = "\d{4}-\d{2}-\d{2}";
//实例化Pattern类
Pattern p = Pattern.compile(pat);
//实例化Matcher类
Matcher m = p.matcher(str);
//执行匹配
if(m.matches())
{
System.out.println("true");
}
else {
System.out.println("false");
}
还可以利用Pattern类对字符串进行拆分。
String pat = "\d+";
String str = "A1213B4534C4533D578";
Pattern p = Pattern.compile(pat);
String[] sp = p.split(str);
//拆分字符串
for(int i=0;i<=sp.length-1;i++)
System.out.print(sp[i]);
输出结果为:ABCD
Pattern还提供字符串替换功能:
String pat = "\d+";
String str = "A1213B4534C4533D578";
Pattern p = Pattern.compile(pat);
Matcher m = p.matcher(str);
//将匹配正则表达式的地方替换成_
System.out.println(m.replaceAll("_"));
输出结果为:A_B_C_D_
其实String本身就提供正在表达式功能,很方便不用再初始化Pattern和Matcher类。
System.out.println("1234-23".matches("\d{4}-\d{2}"));
原创文章,转载请注明: 转载自空空博客
本文链接地址: java使用正则表达式
文章的脚注信息由WordPress的wp-posturl插件自动生成
近期评论