分享

收集48条常用正则式

 underworld 2011-08-02
正则表达式中有很多上述的具有特别意义的字符。首先是下列字符。

[ ]    范围描述符。[a-z]表示从a到z之间的任意一个。 
\w    英文字母和数字。即[0-9 A-Z a-z]。 
\W    非英文字母和数字 
\s    空字符,即[\t\n\r\f]。 
\S    非空字符。 
\d    数字,即[0-9]。 
\D    非数字。 
\b    词边界字符(在范围描述符外部时) 
\B    非词边界字符 
\b    退格符(0x08)(在范围描述符内部时) 
*    前面元素出现0次以上 
+    前面元素出现1次以上 
{m,n}    前面元素最少出现m次,最多出现n次 
    前面元素出现0次或1次 
|    选择 
( )    群组 
其他字符    该字符本身

常用正则式

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

2、正整数:^[0-9]*[1-9][0-9]*$ 

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、负浮点数:^(-((正浮点数正则式)))$ 

10、英文字符串:^[A-Za-z]+$ 

11、英文大写串:^[A-Z]+$ 

12、英文小写串:^[a-z]+$ 

13、英文字符数字串:^[A-Za-z0-9]+$ 

14、英数字加下划线串:^\w+$ 

15、E-mail地址:^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$ 

16、URL:^[a-zA-Z]+://(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\s*)?$ 
或:^http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^<>\"\"])*$

17、邮政编码:^[1-9]\d{5}$

18、中文:^[\u0391-\uFFE5]+$

19、电话号码:^((\(\d{2,3}\))|(\d{3}\-))?(\(0\d{2,3}\)|0\d{2,3}-)?[1-9]\d{6,7}(\-\d{1,4})?$

20、手机号码:^((\(\d{2,3}\))|(\d{3}\-))?13\d{9}$

21、双字节字符(包括汉字在内):^\x00-\xff

22、匹配首尾空格:(^\s*)|(\s*$)(像vbscript那样的trim函数)

23、匹配HTML标记:<(.*)>.*<\/\1>|<(.*) \/> 

24、匹配空行:\n[\s| ]*\r

25、提取信息中的网络链接:(h|H)(r|R)(e|E)(f|F) *= *('|")?(\w|\\|\/|\.)+('|"| *|>)?

26、提取信息中的邮件地址:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*

27、提取信息中的图片链接:(s|S)(r|R)(c|C) *= *('|")?(\w|\\|\/|\.)+('|"| *|>)?

28、提取信息中的IP地址:(\d+)\.(\d+)\.(\d+)\.(\d+)

29、提取信息中的中国手机号码:(86)*0*13\d{9}

30、提取信息中的中国固定电话号码:(\(\d{3,4}\)|\d{3,4}-|\s)?\d{8}

31、提取信息中的中国电话号码(包括移动和固定电话):(\(\d{3,4}\)|\d{3,4}-|\s)?\d{7,14}

32、提取信息中的中国邮政编码:[1-9]{1}(\d+){5}

33、提取信息中的浮点数(即小数):(-?\d*)\.?\d+

34、提取信息中的任何数字 :(-?\d*)(\.\d+)? 

35、IP:(\d+)\.(\d+)\.(\d+)\.(\d+)

36、电话区号:/^0\d{2,3}$/

37、腾讯QQ号:^[1-9]*[1-9][0-9]*$

38、账号(字母开头,允许5-16字节,允许字母数字下划线):^[a-zA-Z][a-zA-Z0-9_]{4,15}$

39、中文、英文、数字及下划线:^[\u4e00-\u9fa5_a-zA-Z0-9]+$ 
40、匹配中文字符的正则表达式: [\u4e00-\u9fa5]

41、匹配双字节字符(包括汉字在内):[^\x00-\xff]

42、匹配空行的正则表达式:\n[\s| ]*\r

43、匹配HTML标记的正则表达式:/<(.*)>.*<\/\1>|<(.*) \/>/ 

44、匹配首尾空格的正则表达式:(^\s*)|(\s*$)

45、匹配IP地址的正则表达式:/(\d+)\.(\d+)\.(\d+)\.(\d+)/g //

46、匹配Email地址的正则表达式:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*

47、匹配网址URL的正则表达式:http://(/[\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?

48、sql语句:^(select|drop|delete|create|update|insert).*$

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多