java正则表达式
从jdk1.4开始,java推出了java.util.regex包,支持正则表达式。
此包下只有如下两个实现类:
Pattern
Matcher
– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –
典型用法如下:
[java]
Pattern p = Pattern.compile("a*b");
Matcher m = p.matcher("aaaaab");
boolean b = m.matches();
[/java]
如果仅使用一次正则表达式,也可如下:
[java]
boolean b = Pattern.matches("a*b", "aaaaab");
[/java]
– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –
说说Pattern
其实,Pattern的用法是比较简单的,除了上面的用法,还可以加标志位,如下:
[java]
Pattern pattern = Pattern.compile(reg, Pattern.CASE_INSENSITIVE|Pattern.UNICODE_CASE);
[/java]
这句代码表示,不区分大小写的匹配以符合 Unicode Standard 的方式完成;
如果没有Pattern.UNICODE_CASE,不区分大小写的匹配假定仅匹配 US-ASCII 字符集中的字符。
官方API注释,指定此标志(Pattern.UNICODE_CASE)可能对性能产生影响。
阅读全文…