文档介绍:正则表达式笔记目标:。、为什么要有正则表达式?正则表达式可以方便的对数据进行匹配,可以执行更加复杂项的字符串验证、拆分、替换功能。例如:现在要求判断一个字符串是否由数字组成,则可以有以下两种做法:。lassRegexDemo01{publicstaticvoidmain(Stringargs[]){Stringstr="1234567890";//此字符串由数字组成booleanflag=true;//定义一个标记变量//要先将字符串拆分成字符数组,之后依次判断charc[]=();//将字符串变为字符数组for(inti=0;i<;i++){//循环依次判断if(c[i]<'0'||c[i]>'9'){//如果满足条件,则表示不是数字flag=false;//做个标记break;//程序不再向下继续执行}}if(flag){("是由数字组成!");}else{("不是由数字组成!");}}};此代码的基本思路:就是通过将字符串转化成字符数组,实现字符串拆分,之后每一个字符进行验证。这样不仅麻烦,并且若此需求更复杂一些,则此代码就会随之更加复杂。。;lassRegexDemo02{publicstaticvoidmain(Stringargs[]){Stringstr="1234567890";//此字符串由数字组成if(pile("[0-9]+").matcher(str).matches()){//("是由数字组成!");}else{("不是由数字组成!");}}};正则表达式的发展史:。Pattern类,Matcher类:这两个类是正则表达式的核心类。。Pattern类定义了一系列使用方法及正则规范。下表是常用的正则规则:规范描述规范描述\\表示一个\\n表示换行\t表示制表符[abc]字符a,b或c[^abc]除了abc之外的任意字符[a-zA-Z0-9_.]表示由字母数字组成\d表示数字\D表示非数字\w表示字母数字下划线\W表示非字母数字下划线\s表示所有的空白字符\S表示所有非空白字符^行的开头$:\d:数字,相当于[0-9]\D:非数字,相当于[^0-9]\w字母、数字、下划线,相当于[a-zA-Z0-9_]\W非字母、数字、下划线,相当于[^a-zA-Z0-9_]表2:正则表达式:数量表示规范描述规范描述X表示必须出现一次X?表示可以出现0次或1次X+表示可以出现1次或多次X*表示可以出现0次,1次或多次X{n}X必须出现n次X{n,m}X必须出现n----m次X{n,}X必须出现n次以上以上的正则表达式如果想要驱动起来,则必须使用Pattern类和Matcher类。Pattern主