• Javascript正则表达式常用的验证(验证手机号,电话,邮箱,网址等)


    验证手机号码是否合法

    验证规则:11位数字,以1开头。
    第二位不能是二,不能是0[3456789]

    例一:

    1. function phone(str){
    2. var reg = /^1[3456789]\d{9}$/;
    3. // ^11开头
    4. // [3456789] 第2位,使用原子表里的任意一个原子都可以
    5. // \d{9}$ 第三位 朝后可以是任意数字 并且最后结尾必须是数字
    6. if(reg.test(str)){
    7. console.log('合法');
    8. return true;
    9. }else{
    10. // console.log('不合法');
    11. console.log('手机格式不正确');
    12. return false;
    13. }
    14. }
    15. var ph = '13110110110';
    16. phone(ph)
    17. }

    预览效果

     例二:

    前面添加 ! 的意义是给这个函数  取反

    1. {
    2. // 验证规则:11位数字,以1开头。
    3. // 第二位不能是二,不能是0[3456789]
    4. function phone(str){
    5. // ^11开头
    6. // [3456789] 第2位,使用原子表里的任意一个原子都可以
    7. // \d{9}$ 第三位 朝后可以是任意数字 并且最后结尾必须是数字
    8. if(!/^1[3456789]\d{9}$/.test(str)){
    9. // 前面添加 ! 的意义是给这个函数 取反
    10. // if(!/^1[3456789]\d{9}$/.test(str)){
    11. console.log('不合法');
    12. return true;
    13. }else{
    14. console.log('合法');
    15. }
    16. }
    17. var ph = '12110110110';
    18. phone(ph)
    19. }

    预览效果

    验证电话号码 

    验证规则:区号+号码,区号以0开头,3位或4位

    号码由7位或8位数字组成

    区号与号码之间可以无连接符,也可以“-”连接

    1. function checktel(str){
    2. // 010-
    3. // 0551-
    4. var reg = /^0\d{2,3}-\d{7,8}$/
    5. if(reg.test(str)){
    6. console.log('合法');
    7. return true;
    8. }else{
    9. console.log('不合法');
    10. return false;
    11. }
    12. }
    13. var str = '010-62790335';
    14. checktel(str);

    预览效果

    机号码中间四位用星号代替 

    1. function replacephone(str){
    2. var reg = /(\d{3})\d{4}(\d{4})/;
    3. var r = str.replace(reg,'$1****$2');
    4. console.log(r);
    5. return r;
    6. }
    7. var phone = '13003334813';
    8. replacephone(phone)

    预览效果

    例: 

    先判断是不是手机号,如果是手机号,我们俩把手机号码中间四位用星号代替

    1. <script>
    2. // 手机号码中间四位用星号代替
    3. function replacephone(str){
    4. // 先判断 传入的数据 是不是手机号码
    5. if(!/^1[3456789]\d{9}$/.test(str)){
    6. // 前面添加 ! 的意义是给这个函数 取反
    7. // if(!/^1[3456789]\d{9}$/.test(str)){
    8. console.log('不合法');
    9. return false;
    10. }else{
    11. // 如果是手机,我们俩把手机号码中间四位用星号代替
    12. var reg = /(\d{3})\d{4}(\d{4})/;
    13. var r = str.replace(reg,'$1****$2');
    14. console.log(r);
    15. return r;
    16. }
    17. }
    18. var phone = '13003334813';
    19. replacephone(phone)
    20. </script>

    预览效果

     验证邮箱

    验证规则:姑且把邮箱地址分成“第一部分@第二部分”这样

    第一部分:由字母、数字、下划线、短线“-”、点号“.”组成,

    第二部分:为一个域名,域名由字母、数字、短线“-”、域名后缀组成, 而域名后缀一般为.xxx或.xxx.xx,一区的域名后缀一般为2-4位,如cn,com,net,现在域名有的也会大于4位

    1. function checkemail(str){
    2. var reg = /^([a-zA-Z0-9_]-*\.*)+@([a-zA-Z0-9_]-?)+(\.[a-zA-Z]{2,3}){1,2}$/
    3. // \.[a-zA-Z]{2,3} 表示点 后面可以是字母,23的字母都可以
    4. // (\.[a-zA-Z]{2,3}){1,2} 表示 .字母 出现1次可以,出现2次也可以(.字母.字母)
    5. // var reg = /^([a-zA-Z0-9-\.])+@([a-z0-9A-Z_-]?)+(\.[a-z0-9A-Z_-]{2,3}?)$/;
    6. // 等价于上面的式子
    7. // var reg =/^(\w*\.*)+@(\w-?)+(\.\w{2,3}){1,2}$/
    8. if(!reg.test(str)){
    9. console.log('不合法');
    10. // return true;
    11. }else{
    12. console.log('合法');
    13. // return false;
    14. }
    15. }
    16. var email = '2373701097@qq.com';
    17. checkemail(email)

    预览效果

     验证网址

    (https|http):\/\/? ?表示 可以出现 ,也可以一次都不出现

     (www)? ?表示 www这个内容 可以出现 ,也可以一次都不出现

    (.?) ?表示 前面的 .点 可以不用出现, 也可以出现一次

    1. function checkUrl(str){
    2. // http:
    3. // https:
    4. var reg = /((http|https):\/\/?)+((www)?)+(([a-zA-Z0-9]){2,})+(\.[a-zA-Z]{2,3}){1,2}$/
    5. // ((www)?) www作为一组内容,出现一次可以,也可以一次都不出现
    6. // (([a-zA-Z0-9]){2,}) 域名是字母或者 数字出现2次或更多
    7. // (\.[a-zA-Z]{2,3}){1,2} 域名后缀 .字母 或者 .字母.字母
    8. if(reg.test(str)){
    9. console.log('合法');
    10. return true;
    11. }else{
    12. console.log('不合法');
    13. return false;
    14. }
    15. }
    16. var str = 'https://sohu.com.cn';
    17. checkUrl(str)

    预览效果

  • 相关阅读:
    Vue(uniapp)父组件方法和子组件方法执行优先顺序
    推荐一个C#开发的窗口扩展菜单,支持系统所以窗口
    专治机器学习面试:机器学习各个算法的优缺点!
    硅雪崩光电二极管(Si-APDs)行业发展现状及前景预测
    【实习小tip】el-form设置label文字宽度、设置el-label和el-input等高、服务器端(接口)方式URL Scheme获取
    IS ATTENTION BETTER THAN MATRIX DECOMPOSITION
    Java 运算符
    简析 Linux 的 CPU 时间
    【python技术】akshare爬取A股最新业绩预告保存进excel的简单示例
    批量添加集合元素
  • 原文地址:https://blog.csdn.net/m0_71814235/article/details/126701060