zoukankan      html  css  js  c++  java
  • 判断字符串里有几种类型的字符

    判断字符串里有几种类型的字符

    例如 abc  这面就有一种类型的字符 都为小写字母, 

      zEv6 这里面就有三种类型的字符 分别为 小写字母 ,大写字母,数字等。

      aB2‘6 这里边有四种  分别为 小写字母, 大写字母,数字和符号’  。

    编程实现判断:

     1     <title>判断字符串里有几种字符</title>
     2     <script>
     3         /*分析
     4             数字0~9的 ascll码范围是 48~57
     5             大写字母的 ascll码范围是 65~90
     6             小写字母的 ascll码范围是 97~122
     7             常用符号的 ascll码范围是 32~47 || 58~64 || 91~96 || 123~126
     8 
     9         */
    10 
    11         function judgeStr(str){
    12             var Num = 0; //数字的个数
    13             var UpperCase = 0;// 大写字母的个数
    14             var LowerCase = 0;// 小写字母的个数
    15             var Sign = 0;// 符号的个数
    16             //利用ascll码值来判断
    17             for(var i = 0; i < str.length; i++){
    18                 var char =str.charCodeAt(i); //将每一位转成ascll码值
    19                 if(char >= 48 && char <= 57){
    20                     Num += 1;
    21                 }else if(char >= 65 && char <= 90){
    22                     UpperCase += 1;
    23                 }else if(char >= 97 && char <= 122){
    24                     LowerCase += 1;
    25                 }else if(char >= 32 && char <= 47 || char >= 58 && char <= 64 || char >= 91 && char <= 96 || char >= 123 && char <= 126){
    26                     Sign += 1;
    27                 }
    28             
    29             }
    30             //alert('输入的字符串中有数字' + Num +'个 大写字母' + UpperCase + '个 小写字母' + LowerCase + '个 符号' + Sign);
    31             return Boolean(Num) + Boolean(UpperCase) + Boolean(LowerCase) + Boolean(Sign);
    32             //返回值为1时说明字符串里只有一种类型的字符,即2为两种,3为三中,4为四中
    33         }
    34         var st = prompt('请输入一个字符串','abc');
    35         alert(judgeStr(st)); //加入输入的是abc  结果就为 1  ; abcC  结果就为2 ; abcC3/  结果就为4;
    36         
    37     </script>

     浏览器效果:

  • 相关阅读:
    条款1:理解模板类型推导
    非受限联合体
    整型
    vector作为函数返回类型
    SQL Server数据库空间管理 (1)
    1085 PAT单位排行 (25 分
    1084 外观数列 (20 分)
    1083 是否存在相等的差 (20 分)
    1082 射击比赛 (20 分)
    1081 检查密码 (15 分)
  • 原文地址:https://www.cnblogs.com/taohuaya/p/9571569.html
Copyright © 2011-2022 走看看