Java正则表达式pattern和matches

来源:互联网 发布:linux安装软件步骤 编辑:程序博客网 时间:2024/04/19 13:22
package com.lks.regex;import java.util.regex.Matcher;import java.util.regex.Pattern;/** *  * @author lks * @time 2016年6月6日下午11:02:05 */public class PatternDemo1 {/** *  * @param args */public static void main(String[] args) {// TODO Auto-generated method stubString regex = "0792-\\d{7}";String content = "aaa0792-2133213fadsad0792-23433213";new PatternDemo1().test1(regex, content);}public void pattern1(String regex) {Pattern pattern = Pattern.compile(regex);// 返回在其中编译过此模式的正则表达式String p = pattern.pattern();System.out.println(p + " " + pattern.flags());}public void splict(String regex, String content) {// 以abc作为分隔符,abc不显示String[] sps = content.split(regex);for (String spc : sps) {System.out.println(spc);}}public void splict1(String regex, String content) {// 不区分大小写Pattern p = Pattern.compile(regex, Pattern.CASE_INSENSITIVE);// 查看内容中的是否匹配String[] str = p.split(content);System.out.println(p.flags());for (String string : str) {System.out.println(string);}}public void matcher1(String regex, String content) {// 不区分大小写Pattern p = Pattern.compile(regex, Pattern.CASE_INSENSITIVE);// 获取一个Matcher的对象Matcher m = p.matcher(content);// 查找符合的字符串,如果匹配成功,则可以通过 start、end 和 group 方法获取更多信息。while (m.find()) {// 发现匹配的字符数组,输出ac,Ac,AC,aCSystem.out.println(m.group());// 输出字符串下标(开始)System.out.println(m.start());// 输出字符串下标(结束)System.out.println(m.end());}// 忽略大小写System.out.println("Java".matches("(?i)(java)"));}// 电话号码匹配public void test1(String regex, String content) {Pattern p = Pattern.compile(regex, Pattern.CASE_INSENSITIVE);Matcher m = p.matcher(content);// 当发现匹配的while (m.find()) {System.out.println(m.group());}}}

0 0
原创粉丝点击