以下内容部分来自 疯狂Java讲义/李刚 ,博客仅用于个人笔记及帮助他人用途,无任何商业目的,如有侵权,请联系作者删除。
Java 正则表达式的介绍
正则表达式是一个强大的字符串处理工具,可以对字符串进行查找、提取、分割、替换等操作。String类里也提供了如下几个特殊的方法。
(1)boolean matches(String regex):判断该字符串是否匹配指定的正则表达式。
(2)String replaceAll(String regex,String replacement):将该字符串中所有匹配 regex 的了串替换成replacement。
(3)String replaceFirst(String regex,String replacement):将该字符串中第一个匹配regex的子串替换成replacement。
(4)String Llsplit(String regex):以regex作为分隔符,把该字符串分割成多个子串。
上面这些特殊的方法都依赖于Java提供的正则表达式支持,除此之外,Java还提供了Pattern和Matcher两个类专门用于提供正则表达式支持。
创建正则表达式
正则表达式是一个可以用于匹配字符串的模板,可以匹配一批字符串,所以创建正则表达式就是创建一个特殊的字符串,规则如下:
正则表达式所支持的合法字符
除此之外,正则表达式中有一些特殊字符,这些字符在正则表达式中有特殊的用途,比如反斜线(\)。如果需要匹配这些字符,就必须首先将这些字符转义。也就是在前面加一个反斜线()。
正则表达式中的特殊字符
预定义字符
方括号表达式
正则表达式还支持圆括号表达式,用于将多个表达式组成一个子表达式,圆括号中可以使用或运算符(|)。
除此之外,Java 正则表达式还支持如下表的几个边界匹配符:
边界匹配符
正则表达式还提供了数量标识符,正则表达式支持的数量标识符有如下几种模式:
Greedy(贪婪模式): 数量表示符默认采用贪