在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}"));
版权声明
本站文章、图片、视频等(除转载外),均采用知识共享署名 4.0 国际许可协议(CC BY-NC-SA 4.0),转载请注明出处、非商业性使用、并且以相同协议共享。
© 空空博客,本文链接:https://www.yeetrack.com/?p=30
近期评论