00学习笔记-正则表达式(常用总结)

相关链接:00学习笔记-正则表达式(基础知识)

一、常用的校验

   1、校验登录名

    规则:5-20个以字母开头、可带数字、“_”、“.”的字符串

    匹配:字母开头       /^[a-zA-Z]{1}/

       后跟数字、“_”、“.”   /^[a-zA-Z]{1}([a-zA-Z0-9]|[._])/

       5-20位        /^[a-zA-Z]{1}([a-zA-Z0-9]|[._]){4,19}$/

    举例:      

1 function isRegisterUserName(s){
2     var patrn=/^[a-zA-Z]{1}([a-zA-Z0-9]|[._]){4,19}$/;
3     if (!patrn.exec(s)){
4         return false
5     }else{
6         return true
7     }
8 }

  2、  校验密码

    规则:只能输入6-20个字母、数字、下划线

    匹配:/^(\w){6,20}$/

    举例: 

1 function isPasswd(s){
2     var patrn=/^(\w){6,20}$/;
3     if (!patrn.exec(s)) return false
4     return true
5 }

       规则:由数字和字母组成,并且要同时含有数字和字母,且长度要在8-16位之间

    匹配:/^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{8,16}$/

    

       规则:可以包含数字、字母、下划线,并且要同时含有数字和字母,且长度要在8-16位之间

    匹配:/^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z_]{8,16}$/

   3、校验普通电话、传真号码

    规则:可以“+”开头,除数字外,可含有“-”

    匹配:/^[+]{0,1}(\d){1,3}[ ]?([-]?(\d){1,12})+$/

       /^[+]{0,1}(\d){1,3}[ ]?([-]?((\d)|[ ]){1,12})+$/

  4、校验手机号码     

    规则:必须以数字开头,除数字外,可含有“-”

    匹配:/^[+]{0,1}(/d){1,3}[ ]?([-]?((/d)|[ ]){1,12})+$/

   5、校验邮政编码    

    规则:

    匹配:/^[a-zA-Z0-9]{3,12}$/

       /^[a-zA-Z0-9 ]{3,12}$/

二、常用的正则表达式

  1. 非负整数(正整数 + 0)/^//d+$/
  2. 正整数   /^[0-9]*[1-9][0-9]*$/
  3. 非正整数(负整数 + 0)/^((-//d+)|(0+))$/
  4. 负整数    /^-[0-9]*[1-9][0-9]*$/
  5. 整数  /^-?//d+$/
  6. 非负浮点数(正浮点数 + 0)/^//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. 非正浮点数(负浮点数 + 0)/^((-//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-z]+$/
  12. 由26个英文字母的大写组成的字符串   /^[A-Z]+$/
  13. 由26个英文字母的小写组成的字符串   /^[a-z]+$/
  14. 由数字和26个英文字母组成的字符串  /^[A-Za-z0-9]+$/
  15. 由数字、26个英文字母或者下划线组成的字符串  /^//w+$/
  16. email地址  /^[//w-]+(//.[//w-]+)*@[//w-]+(//.[//w-]+)+$/
  17. url  /^[a-zA-z]+://(//w+(-//w+)*)(//.(//w+(-//w+)*))*(//?//S*)?$/
  18. 匹配中文字符   / [\u4e00-\u9fa5]/
  19. 匹配空白行  / \n\s*\r/
  20. 匹配email地址  /[\w!#$%&'*+/=?^_`{|}~-]+(?:\.[\w!#$%&'*+/=?^_`{|}~-]+)*@(?:[\w](?:[\w-]*[\w])?\.)+[\w](?:[\w-]*[\w])?/
  21. 匹配网址URL   / [a-zA-z]+://[^\s]*/
  22. 匹配国内电话号码  / \d{3}-\d{8}|\d{4}-\{7,8}/
  23. 匹配中国邮政编码  / [1-9]\d{5}(?!\d)/
  24. 匹配18位身份证号  /^(\d{6})(\d{4})(\d{2})(\d{2})(\d{3})([0-9]|X)$/

猜你喜欢

转载自www.cnblogs.com/Jeremy-blogs/p/9392988.html