正则表达式的应用
电话号码验证
-
电话号码有数字和"-"构成
-
电话号码为7-8位
-
如果电话号码中包含区号,那么区号为三位或四位,首位是0
-
区号用"-"和其他部分隔开
-
移动电话号码为11位
-
11位移动电话号码的第一位和第二位为"13","15","18"
(0\d{2,3}-\d{7,9})l(1[35789]\d{9})
(这里以及下面或用l(L)表示)
电子邮件地址验证
-
用户名:由字母,数字,中划线,下划线组成
-
@
-
网址:由字母,数字组成
-
小数点.
-
组织域名:由2-4位字母组成
-
不区分大小写
[\w\-]+@[a-z0-9A-z]+(\.[A-Za-z]{2,4}){1,3}
常用正则表达式
匹配中文字符 | [\u4e00-\u9fa5] |
匹配空白行 | \n\s*\r |
匹配HTML标记 | <(\S*?)[^>]*>.*?\1>l<.*?/> |
匹配首位空白字符 | ^\s*|\s*$ |
匹配Email地址 | \w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)* |
匹配网址URL | [a-zA-Z]+://[^\s]* |
匹配国内电话号 | \d{3}-\d{8}l\d{4}-\d{7} |
匹配腾讯QQ号 | [1-9][0-9]{4,} |
匹配中国邮政编码 | [1-9]\d{5}(?!\d) |
匹配身份证 | \d{15}l\d{18} |
匹配ip地址 | \d+\.\d+\.\d+\.\d+ |
其他妙用
-
开发环境和文本编辑器中使用正则
-
Eclipse
-
Notepad++
-
Editplus
-
UltraEdit
-
-
数据库中也可以使用正则
-
Mysql5.5以上
-
Oracle10g以上
-
例如:SELECT prod_name FROME products WHERE prod_name REGEXP '.000' (.匹配任意字符)
-