正则表达式(二)

Regular Expressions

Posted by Elliot on April 6, 2015

版权声明:本文为博主原创文章,未经博主允许不得转载

上一篇已经基本讲了正则表达式的语法了。这篇就讲一些常用的正则表达式。

哈哈,一下正则表达式来自百度百科吼吼吼

  1. 验证用户名和密码:"^[a-zA-Z]\w{5,15}$"
  2. 验证电话号码:"^(\\d{3,4}-)\\d{7,8}$"
  3. 验证手机号码:"^1[3|4|5|7|8][0-9]\\d{8}$"
  4. 验证身份证号:"\\d{14}[[0-9],0-9xX]"
  5. 验证Email地址:"^\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\.\\w+([-.]\\w+)*$"
  6. 只能输入数字和字母:"^[a-zA-Z0-9]+$"
  7. 整数或者小数:"^[0-9]+([.]{0,1}[0-9]+)"
  8. 只能输入数字:"^[0-9]*$"
  9. 只能输入n位数字:"^\\d{n}$"
  10. 只能输入n~m位数字:"^\\d{n,m}$" (注:m>n)
  11. 只能输入至少n未数字:"^\\d{n,}$"
  12. 只能输入零和非零开头的数字:"(0|[1-9][0-9]*)$"
  13. 只能输入两位小数的正实数:"^[0-9]+(.[0-9]{2})?$"
  14. 只能输入有1~3位小数的正实数:"^[0-9]+(.[0-9]{1,3})?$"
  15. 只能输入非零的正整数:"^\+?[1-9][0-9]*$"
  16. 只能输入非零的负整数:"^\-[1-9][0-9]*$"
  17. 只能输入长度为3的字符串:"^.{3}$"
  18. 只能输入字母的字符串:"^[a-zA-Z]+$"
  19. 只能输入由26个大写英文字母组成的字符串:"^[A-Z]+$"
  20. 只能输入由26个小写字母组成的字符串:"^[a-z]+$"
  21. 验证是否含有……%$#@&*,'."=?\等字符:"[^%&',;'=?\x22]+"
  22. 只能输入汉字:"^[\u4e00-\u9fa5]{0,}$"
  23. 验证URL:"^http"//([\\w-]+\.)+[\\w-]+(/[\\w-./?%&=]*)?$"
  24. 验证一年的12个月:"^(0?[1-9]|1[0-2])$"
  25. 验证一个月天数:"^((0?[1-9])|((1|2)[0-9])|30|31)$"
  26. 获取日期的正则表达式:"\\d{4}[年|\-\.]\\d{\1-\12}[月|\-|\.]\\d{\1-\31}日?"
  27. 匹配双字节字符:"[^\x00-\xff]"
  28. 匹配空白行的正则表达式:"\n\s*\r"
  29. 匹配HTML:"<(\s*?)[^>]*>.*?</>\<.*?>"
  30. 匹配首尾空白字符:"^\s*|\s*$"
  31. 匹配QQ号:"[1-9][0-9]\{4,\}" 注:QQ号从10000开始
  32. 匹配中国邮政:"((2[0-4]\\d|25[0-5]|[01]?\\d\\d?)\.){3}(2[0-4]\\d|25[0-5]|[01]?\\d\\d)"

接下来加一个比较全面的URL识别正则表达式

"((?:(?:ht|f)tps?://)*(((?:[a-zA-Z0-9-]+\\.)+(?:com|net|org|info|mil|gov|edu|name|xxx|[a-z]{2}){1})|(((2[0-4]\\d|25[0-5]|[01]?\\d\\d?)\\.){3}(2[0-4]\\d|25[0-5]|[01]?\\d\\d?)))(?::[0-9]+)?(?:(/|\\?)[a-zA-Z0-9\\^\\.\\{\\}\\(\\)\\[\\]_\\?,'/\\\\+&%\\$:#!@=~-]*)*)"

好了基本的常用正则表达式都在这。。。