输入一串只含有中文、英文和数字的字符串,统计其中中文字符、英文字符和数字字符各有多少个?

public class StatisticZEN {
    public static void main(String[] args) {
        String str = "中国aadf的111萨bbb菲的zz萨菲";
        statisticsChar(str);
    }

    private static HashMap<String, Integer> statisticsChar(String str) {
        int chineseCount = 0;
        int englishCount = 0;
        int digitCount = 0;
        for (int i = 0; i < str.length(); i++) {
            char c = str.charAt(i);
            if(c>=‘0‘ && c<=‘9‘)
                digitCount ++;
            else if((c>=‘a‘ && c<=‘z‘) || (c>=‘A‘ && c<=‘Z‘))
                englishCount ++;
            else
                chineseCount ++;
        }
        HashMap<String, Integer> map = new HashMap<String, Integer>();
        map.put("中文字符", chineseCount);
        map.put("英文字符", englishCount);
        map.put("数字字符", digitCount);
        return map;
    }
}
时间: 2024-10-23 03:42:07

输入一串只含有中文、英文和数字的字符串,统计其中中文字符、英文字符和数字字符各有多少个?的相关文章

Js控制文本框只能输入中文、英文、数字与指定特殊符号

JS 控制文本框只能输入数字<input onkeyup="value=value.replace(/[^0-9]/g,'')"onpaste="value=value.replace(/[^0-9]/g,'')" oncontextmenu ="value=value.replace(/[^0-9]/g,'')"> JS 控制文本框只能输入数字.小数点<inputonkeyup="value=value.replac

利用栈判断输入的表达式中的括号是否匹配(假设只含有左、右括号)

利用栈判断输入的表达式中的括号是否匹配(假设只含有左.右括号) bool Match(char exp[],int n) { int i=0; char e; bool match=true; SqStack *st; InitStack(st);//初始化栈 while(i<n && match)//扫描exp中所有字符 { if(exp[i]=='(')//当前字符为左括号,将其进栈 Push(st,exp[i]); else if(exp[i]==')')//当前字符为右括号

js 控制文本框只能输入中文、英文、数字等

总而言之:先在<input>里输入onkeyup="value=value.replace(/[^\X]/g,'')" 然后在(/[\X]/g,'')里的X换成你想输入的代码就可以了,中文u4E00-u9FA5,数字0-9,英文a-z\A-Z,其它符号@.点或其它符号.也可以多个,用\隔开就行了. 例如:中英文 + 数字 + @符号 + 点符号   \a-\z\A-\Z0-9\u4E00-\u9FA5\@\. 若想在文本框里不能右键弹出菜单和不能粘贴进复制的信息的话 就要在

JS 控制文本框只能输入中文、英文、数字与指定特殊符号

想做姓名输入的js判断是否是中文,但是网上找的很多是源于一篇文章的,判断中文的正则式不对,后来找到一个可以准确判断了,但是是监测里面有中文的就行,跟我想要的只能输入中文的意思相左,所以又找了下面的 JS 控制文本框只能输入数字 input onkeyup="value=value.replace(/[^0-9]/g,'')" onpaste="value=value.replace(/[^0-9]/g,'')" oncontextmenu = "value

在控制台输入一串英文字符,然后统计出每个字母出现的次数【忽略大小写】

import java.util.Scanner; public class Demo2 { public static void main(String[] args) { //首先输入一串字符,并将字符转化为小写 Scanner scanner = new Scanner(System.in); System.out.println("请输入一串英文字母"); char[] str = scanner.next().toLowerCase().toCharArray(); //利用

vc 文字转换到机内码,输入汉字和数字, 输出一串16进制码(数字-〉ASII码,汉字—〉国标码)

// 可以用,此程序实现的是是文字转换到机内码.机内码=国标码+8080H,不过学习了. //此程序是利用汉字在机器内输出就是机内码的原理,直接保存的,其实挺简单. //输入一串汉字和数字的混合字符, 经过程序转换, 对应输出一串16进制码(数字-〉ASII码,汉字—〉国标码) CString temp; GetDlgItemText(IDC_EDIT1,m_hanzi);//将汉字保存到变量m_hanzi unsigned char *b=new unsigned char[m_hanzi.G

JAVAWEB项目实现验证码中文、英文、数字组合

验证码基础 一.什么是验证码及它的作用 :验证码为全自动区分计算机和人类的图灵测试的缩写,是一种区分用户是计算机的公共全自动程序,这个问题可以由计算机生成并评判,但是必须只有人类才能解答.可以防止恶意破解密码.刷票.论坛灌水.有效防止某个黑客对某一个特定注册用户用特定程序暴力破解方式进行不断的登录. 二.图文验证码的原理 :在servlet中随机生成一个指定位置的验证码,一般为四位,然后把该验证码保存到session中.在通过Java的绘图类以图片的形式输出该验证码.为了增加验证码的安全级别,可

input输入框限制输入英文,数字,汉字

<h1>js验证输入框内容</h1><br /><br /> 只能输入英文<input type="text" onkeyup="value=value.replace(/[^a-zA-Z]/g,'')"><br /><br />只能输入英文<input type="text" onkeyup="value=value.replace(/[^\a-

英文,数字和中文混合的彩色验证码实现

功能描述:英文,数字和中文混合的彩色验证码是一种比较安全的验证码,虽然这样的验证码会给用户输入带来不便,但对于保障用户账号的安全还是值得的.本实例介绍实现英文,数字和中文混合验证码的彩色验证码的方法,输入用户名和密码后,还需要输入正确的验证码才可以正常登陆.由于验证码是随机生成的,可能会产生看不清楚的验证码,因此添加了重新生成验证码的功能,用户单击"看不清?换一个"超级链接和图片本身,可以重新生成一个验证码. 1:编写生成英文,数字和中文混合的彩色验证码的Servlet实现类 要生成英