[Java基础教程 ]正则表达式ppt课件.ppt
正则表达式,马剑威,第 136 讲,课程大纲,1、认识正则2、正则表达式3、Pattern类4、Matcher类5、String类对正则的支持6、示例,1、认识正则,通过一个程序来简单了解一下正则有那些用处:问题:判断一个字符串是否由数字组成,“0487561”,2、正则表达式,正则表达式(Regular Expression)正则表达式使用单个字符串来描述、匹配一系列符合某个句法规则的字符串。则表达式通常被用来检索、替换那些符合某个模式的文本java.util.regex包中提供以下两个类对正则表达式的支持:Matcher 类通过解释 Pattern 对 character sequence 执行匹配操作的引擎。Pattern 类正则表达式的编译表示形式。,3、Pattern类,public final class Pattern extends Objectimplements Serializable 正则表达式的编译表示形式。指定为字符串的正则表达式必须首先被编译为此类的实例。典型的调用顺序是 Pattern p=Ppile(a*b);Matcher m=p.matcher(aaaaab);boolean b=m.matches();,4、Matcher类,public final class Matcher extends Object implements MatchResultMatcher类的主要功能是用于进行正则的匹配,通过Pattern类中定义完的正则,再使用Matcher类进行验证或者替换。常用方法:boolean matches()尝试将整个区域与模式匹配。String replaceAll(Stringreplacement)替换模式与给定替换字符串相匹配的 输入序列的每个子序列。String replaceFirst(Stringreplacement)替换模式与给定替换字符串匹配的 输入序列的第一个子序列。,5、String类对正则的支持,在JDK 1.4之后加入了正则,随后又更新了String的操作类,因为在使用正则中,所有的内容通过字符串表示的比较多。在String类中有以下的方法可以完成对正则的支持:boolean matches(Stringregex)告知此字符串是否匹配给定的正则表达式。String replaceAll(Stringregex,Stringreplacement)使用给定的 replacement 替换此字符串 所有匹配给定的正则表达式的子字符串。String replaceFirst(Stringregex,Stringreplacement)使用给定的 replacement 替换此字符串 匹配给定的正则表达式的 第一个子字符串。String split(Stringregex)根据给定正则表达式的 匹配拆分此字符串。,6、示例,1、验证电话号码(如:010-53517230)2、验证手机号码3、验证用户名,只能是字母开头的数字、字母或下划线的组合4、验证IP地址(如:192.168.1.1)5、验证网址(如:http:/)6、验证年龄(100以内)7、验证金额(可以有小数位),谢谢,Thanks,