码迷,mamicode.com
首页 > 其他好文 > 详细

正则表达式

时间:2017-07-27 14:35:11      阅读:106      评论:0      收藏:0      [点我收藏+]

标签:划线   url   amp   ref   option   正则表达式   验证   简单   也有   

1、模式匹配符

^x

以x开头

x$

x结尾

x*

匹配x  0次或n

x+

匹配x  1次或n

x?

匹配x  0次或1

.x

除换行符外单个字符

x|y

匹配x或者y

n{X,Y}

匹配包含 X Y n 的序列的字符串。

\b

匹配分界线 一个空格

\B

非分界线

\d

匹配一个数字

\D

匹配非数字

\n

换行符

\r

回车符

\s

空白符(空格、tab、换行符、form feed

\f

表单符

\v

顶头制表符

\t

制表符

\w

数字、字母、下划线

\W

除数字、字母、下划线以外字符

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2、初级练习

1、求非负整数:^\d+$

2、匹配正整数:^[1-9]*[1-9][0-9]*$在网上也有这种写法的^[0-9]*[1-9][0-9]*$

这里截图我也不贴了,前者指能匹配123012这种整数,而后者可以匹配001230

取舍就看实际的需要了

3、非正整数:^(-\d+|(0+))$

4、负整数:^-[0-9]*[1-9][0-9]*$

5、整数:^-?\d+$

6、非负浮点数:^\d+(\.\d+)?$

7、正浮点数:^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$

8、非正浮点数:^((-\d+(\.\d+)?)|(0+(\.0+)?))$

9、负浮点数:^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$

10、浮点数:^(-?\d+)(\.\d+)?$

11、有数字、26个英文字母组成的字符串:^[A-Za-z0-9]+$

 

 

中级练习

 

1、长度为8-10的用户密码(以字母开头、数字、下划线)

^[a-zA-Z]\w{7,9}$

2、验证输入只能是汉字:^[\u4e00-\u9fa5]{0,}$

3、电子邮箱验证:^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$

4URL地址验证:^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$

5、电话号码的验证:0\d{3}-\d{7}|0\d{2}-\d{8}

6、简单的身份证号验证:\d{15}|\d{18}$

 

高级练习

 

1、提取并捕获html标签内容:

<a(?:[^>]*)+href=([^>]*)(?:[^>]*)*>

 技术分享

<OPTION\s.*?>

 技术分享

 

正则表达式

标签:划线   url   amp   ref   option   正则表达式   验证   简单   也有   

原文地址:http://www.cnblogs.com/infernoyy/p/7244353.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!