1. 常用的正则表达式
"^//d+$" //非负整数(>=0)
"^[0-9]*[1-9][0-9]*$" //正整数?
"^((-//d+)|(0+))$ " //非正整数(<=0)
"^-[0-9]*[1-9][0-9]*$" //负整数?
"^-?//d+$ " //整数
"^[A-Za-z]+$" //由26个英文字母组成的字符串
"^[A-Z]+$" //由26个大写英文字母组成的字符串
"^[a-z]+$ " //由26个小写英文字母组成的字符串
"^[A-Za-z0-9]+$" //由数字和26个英文字母组成的字符串
"^//w+$" //由数字和26个英文字母或者下划线组成的字符串
"^//w+([-+.]//w+)*@//w+([-.]//w+)*//.//w+([-.]//w+)*$" //email地址
"^[a-zA-Z]+://(//w+(-//w+)*)(//.(//w+(-//w+)*))*(//?//S)?$" //url
"^ [/u4e00-/u9fa5]+$" //姓名中文 匹配中文字符
"[1-9][0-9]{4,13}" //QQ 456789
"//d{15}|//d{18}" //身份证号:表示15位或者18位数字的一串数字电话号码
"^[1][3,5]+//d{9}" // 手机号码: 表示第一位是1,第二位为3或5,结尾为9位数字的一串数字
"//d{1,3}+//.//d{1,3}+//.//d{1,3}+//.//d{1,3}" //IP地址
"//d{4}-//d{8}|//d{4}-//d{7}|//d(3)-//d(8)" //电话 正确格式 012-87654321、0123-87654321、0123-7654321
"[1-9]//d{5}(?!//d)" //邮编 210000
[^//x00-//xff]" //匹配双字节字符(包括汉字在内)
生日日期?
会员登录名:由4-20个英文字母或数字组成
密码:由6-20个英文字母或数字组成。
2.java正则表达式通过java.util.regex包下的Pattern类与Matcher类实现:
1、首先引入java包:java.util.regex
2、使用方法如下:
共分三步:
①构造一个模式.
Pattern p=Pattern.compile("[a-z]*");
②建造一个匹配器
Matcher m = p.matcher(str);
③进行判断,得到结果
boolean b = m.matches();
Matcher类提供三个匹配操作方法,三个方法均返回boolean类型,当匹配到
时返回true,没匹配到则返回false
①m.matches()
matches()对整个字符串进行匹配,只有整个字符串都匹配了才返回true
②m.lookingAt()
lookingAt()对前面的字符串进行匹配,只有匹配到的字符串在最前面才返
回true
③m.find()
find()对字符串进行匹配,匹配到的字符串可以在任何位置
3 ^:Java中正则式的开始符
$:Java中正则式的结束符
/s*:任意个数的空格
/s+:1个或以上个空格
.*:任意内容
?!/w:非[A-Z]字母
/D 等於 [^0-9] 非数字
/s 等於 [ /t/n/x0B/f ] 空白字元
/S 等於 [^ /t/n/x0B/f ] 非空白字元
/w 等於 [a-zA-Z_0-9] 数字或是英文字
/W 等於 [^a-zA-Z_0-9] 非数字与英文字
字符类
[abc] a, b, or c (简单类)
[^abc] 除了a、b或c之外的任意 字符(求反)
[a-zA-Z] a到z或A到Z ,包含(范围)
[a-z-[m-p]] a到z,除了m到 p: [a-lq-z]
[a-z-[^def]] d, e, 或 f
备注:“/"在Java中必须转译,所以在表达式中很多"//"的符号
参考文献:csdn空间4/JAVA正则表达式实例教程.pdf
正则表达 软件?

2万+

被折叠的 条评论
为什么被折叠?



