正则表达式(Regular expression),又称规则表达式。正则表达式是对字符串 *** 作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个"规则字符串",这个"规则字符串"用来表达对字符串的一种过滤逻辑。
正则表达式是对字符串(包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为"元字符")) *** 作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个"规则字符串",这个"规则字符串"用来表达对字符串的一种过滤逻辑。正则表达式是一种文本模式,该模式描述在搜索文本时要匹配的一个或多个字符串。
正则表达式的灵活性、逻辑性和功能性非常强,可以迅速地用极简单的方式达到字符串的复杂控制。
二、正则表达式的字符正则表达式由一些普通字符和一些元字符(metacharacters)组成。普通字符包括大小写的字母和数字,而元字符则具有特殊的含义,我们下面会给予解释。
三、正则表达式用途
1、匹配字符串
以String类中的matches方法为例。乍一看,matches方法和equals方法很像。比如:
这两条语句返回值:
但是matches方法的功能更强大。它不仅可以匹配一个固定的字符串,还可以匹配符合一个模式的字符串集。比如:
上面这些语句的结果都是true。其中"Java.*"是一个正则表达式。 它描述了一个字符串模式,以Java开始,后面跟0个或多个字符串。
2、替换和拆分字符串
String类的replaceAll,replaceFirst,split方法,用于替换和拆分字符串。其中replaceAll方法用于替换所有匹配的子字符串,replaceFirst方法用于替换第一个匹配的子字符串。比如:
结果为:
split(regex)方法使用匹配的分隔符将一个字符串拆分成子字符串。而split(regex,limit)方法中的limit用来确定匹配次数,当limit<=0时,二者作用相同。
结果为:
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)