标签:
一、 什么是正则表达式?
正则表达式是一种文本模式,包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为“元字符”)。模式描述在搜索文本时要匹配的一个或多个字符串。
二、正则表达式语法参考: https://msdn.microsoft.com/zh-cn/library/ae5bf541(VS.80).aspx。
三、 正则表达式规则的例子:
/^(/d{3}-|/d{4}-)?(/d{8}|/d{7})?$/ //国内电话
/^[1-9]*[1-9][0-9]*$/ //腾讯QQ
/^[//w-]+(//.[//w-]+)*@[//w-]+(//.[//w-]+)+$/ //email地址
/^[a-zA-Z]+://(//w+(-//w+)*)(//.(//w+(-//w+)*))*(//?//s*)?$/ //url
/^/d+$/ //非负整数
/^[0-9]*[1-9][0-9]*$/ //正整数
/^((-//d+)|(0+))$/ //非正整数
/^-[0-9]*[1-9][0-9]*$/ //负整数
/^-?//d+$/ //整数
/^//d+(//.//d+)?$/ //非负浮点数
/^(([0-9]+//.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*//.[0-9]+)|([0-9]*[1-9][0-9]*))$/ //正浮点数
/^((-//d+(//.//d+)?)|(0+(//.0+)?))$/ //非正浮点数
/^(-(([0-9]+//.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*//.[0-9]+)|([0-9]*[1-9][0-9]*)))$/ //负浮点数
/^(-?//d+)(//.//d+)?$/ //浮点数
/^[a-zA-Z]+$/ //由26个英文字母组成的字符串
/^[a-z]+$/ //由26个英文字母的大写组成的字符串
/^[a-z]+$/ //由26个英文字母的小写组成的字符串
/^[a-za-z0-9]+$/ //由数字和26个英文字母组成的字符串
/^//w+$/ //由数字、26个英文字母或者下划线组成的字符串
/^/d+[.]?/d+$/ //可以有小数点的任意多数字(全部为数字)
/(?=^[0-9a-zA-Z]{4,20}$)/w*[a-zA-Z]+/w*/ //同时满足下面三个条件
(1) 数字和字母(2)4-20位(3)不能全部是数字
四、Java中的正则表达式应用
Java中有实现正则表达式的类 Pattern 和Matcher 它们都存在于java.utl.regex包内。
在java中正则表达式主要有四点基本应用:
1.字符串匹配
2.字符串替换
3.字符串查找
4.字符串分割
参考链接:http://blog.csdn.net/luosijin123/article/details/4792181
http://blog.sina.com.cn/s/blog_76ce6f790100pb4r.html
容易混淆的知识:http://lavasoft.blog.51cto.com/62575/179324/
标签:
原文地址:http://www.cnblogs.com/zzknewbie/p/4649756.html