Java正则表达式通过java.util.regex包下的Pattern和Matcher类实现
Pattern类用于创建一个正则表达式,也可以说是创建一个匹配模式,可以通过两个静态方法创建:compile(String regex)和compile(String regex,int flags),其中regex是正则表达式,flags为可选模式(如:Pattern.CASE_INSENSITIVE 忽略大小写)
实例:
Pattern pattern = Pattern.compile("Java");
System.out.println(pattern.pattern());//返回此模式的正则表达式即Java
Pattern类还有两个根据匹配模式拆分输入序列的方法:split(CharSequence input) 和split(CharSequence input, int limit),其中limit为返回元素的个数。
实例:
Pattern pattern = Pattern.compile("Java");
String test="123Java456Java789Java";
String[] result = pattern.split(test);
for(String s : result)
System.out.println(s);
结果:
在细说一下split(CharSequence input, int limit),当limit值大于所能返回的字符串的最多个数或者为负数,返回的字符串个数将不受限制,但结尾可能包含空串,而当limit=0时与split(CharSequence input)等价,但结尾的空串会被丢弃。
Pattern pattern = Pattern.compile("Java");
String test = "123Java456Java789Java";
String[] result = pattern.split(test,2);
for(String s : result)
System.out.println(s);
result = pattern.split(test,10);
System.out.println(result.length);
result = pattern.split(test,-2);
System.out.println(result.length);
result = pattern.split(test,0);
System.out.println(result.length);
运行结果:
Pattern类也自带一个静态匹配方法matches(String regex, CharSe
版权声明:本文为woaigaolaoshi原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。