主要用正则表达式在完成对汉字,数字,英文数量的验证。

import java.util.Scanner;
/*
* 统计汉字,数字,英文,other
* */
public class Test {
public static int count(String text) {
// 正则,这两个unicode值正好是Unicode表中的汉字的头和尾。"[]"代表里边的值出现一个就可以,后边的“+”代表至少出现1次,合起来即至少匹配一个汉字。
String Reg = "^[\u4e00-\u9fa5]{1}+";
int result = 0;
for (int i = 0; i < text.length(); i++) {
String b = Character.toString(text.charAt(i));
if (b.matches(Reg))
result++;
}
return result;
} public static void main(String[] args) {
System.out.println("请输入:");
Scanner scanner = new Scanner(System.in);
String str=scanner.nextLine(); int length = str.length();
int nLen = length - str.replaceAll("\\d", "").length();//由两部分组成的,\转义符 加\d是一个正字表达式,标识所有数字即0-9
int eLen = length - str.replaceAll("[a-zA-Z]", "").length();//标志所有英文 int cLen = count(str);
int oLen=length - nLen - eLen - cLen;//其他 System.out.println("Number:" + nLen);
System.out.println("English:" + eLen);
System.out.println("Chinese:" + cLen);
System.out.println("Other:"+oLen);
}
}

主要理解正则表达式。

输入一系列的字符,打印结果如下:

统计输入的汉字,数字,英文,other数量的更多相关文章

  1. php---------正则判断字符串中是否由汉字 数字 英文字母组成

    开发中常常用到正则表达式,分享两个常用的正则表达式,php检查字符串是否由汉字,数字,英文字母,下划线组成, 注意这里只是针对utf-8字符集的字符串检查. 数字 汉字 英文字母: if (!preg ...

  2. C++ 统计输入的句子有多少英文字母

    // ConsoleApplication1.cpp: 定义控制台应用程序的入口点.//#include "stdafx.h"#include <iostream>#i ...

  3. 如果输入的不是英文字母或者数字或者汉字,则返回false

    public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_C ...

  4. Java基础编程题——分别统计出其中汉字、英文字母、空格、数字和其它字符的个数

    package com.yangzl.basic; import java.util.Scanner; /** * 分别统计出其中汉字.英文字母.空格.数字和其它字符的个数 * @author Adm ...

  5. Android限定EditText的输入类型为数字或者英文(包括大小写),EditText,TextView只能输入两位小数

    Android限定EditText的输入类型为数字或者英文(包括大小写) // 监听密码输入框的输入内容类型,不可以输入中文    TextWatcher mTextWatcher = new Tex ...

  6. Html input 限制输入中英文字符,及字符数量统计

    margin:20px 0px 0px; font-family:Arial; color:rgb(51,51,51)"> 验证用户名的一个例子: html: <input ty ...

  7. JAVA 统计字符串中中文,英文,数字,空格的个数

    面试题:输入一行字符,分别统计出其中英文字母.中文字符.空格.数字和其它字符的个数 可以根据各种字符在Unicode字符编码表中的区间来进行判断,如数字为'0'~'9'之间,英文字母为'a'~'z'或 ...

  8. EXCEL表格单元格中包含数字英文和汉字,如何自动去掉汉字,保留英文和数字

    EXCEL表格单元格中包含数字英文和汉字,如何自动去掉汉字,保留英文和数字 Function 求数字和字母(对象 As String) '在文本与数字混杂中提取数字和字母   Dim myReg    ...

  9. JavaScript控制输入框中只能输入中文、数字和英文

    1.问题背景 遇到这样一个问题:有一个输入框,要求只能输入中文.数字和英文(即过滤特殊字符串) 2.JS代码 function  checkUsername() { //正则表达式 var reg = ...

随机推荐

  1. CC2650LaunchPad 运行contiki hello-world示例程序

    最近做毕设,开始接触contiki. 下载并运行Instant Contiki 3.0 这是官方制作的虚拟机镜像,直接用vmware等工具就可以运行. 从这里下载. 下载并解压后,用vmware运行. ...

  2. 为什么选择.NETCore?

    为什么.NETCore? 学习新的开发框架是一项巨大的投资.您需要学习如何在新框架中编写,构建,测试,部署和维护应用程序.作为开发人员,有许多框架可供选择,很难知道什么是最适合的工作.即使您正在使用. ...

  3. PostgreSql问题:ERROR: operator does not exist: timestamp without time zone > character varying

    问题描述: ERROR:  operator does not exist: timestamp without time zone > character varying 解决方法: //注意 ...

  4. mybatis一级缓存二级缓存

    一级缓存 Mybatis对缓存提供支持,但是在没有配置的默认情况下,它只开启一级缓存,一级缓存只是相对于同一个SqlSession而言.所以在参数和SQL完全一样的情况下,我们使用同一个SqlSess ...

  5. pipeline结合GridSearchCV的一点小介绍

    clf = tree.DecisionTreeClassifier() ''' GridSearchCV search the best params ''' pipeline = Pipeline( ...

  6. Linux上常用软件安装和总结

    Linux总结: 以前只顾着撸码,Linux这些一般都是运维玩的,然后也没怎么折腾过,每次上线也都只是发布下,最多也就是启停服务器.最近闲来无事就玩了玩Linux,还挺好的. 这里做一个总结来结束Li ...

  7. Linux指令--traceroute,netstat,ss

    通过traceroute我们可以知道信息从你的计算机到互联网另一端的主机是走的什么路径.当然每次数据包由某一同样的出发点(source)到达某一同样的目的地(destination)走的路径可能会不一 ...

  8. Java与C/C++的区别

        首先应该清楚,Java是由C++发展而来的,它保留了c++的大部分内容,类似于c++,但句法更清晰,规模更小,更易学.它是在对多种程序设计语言进行了深入细致研究的基础上,据弃了其他语言的不足之 ...

  9. linkin大话面向对象--枚举

    枚举类(enum) 其实我们使用到枚举的地方还是很多的,其实我们可以完全人工的来实现枚举的功能.比如说我现在手里的项目我就是自己实现的枚举,说白了,枚举就是一个类的多例模式. 1,使用enum声明,默 ...

  10. maven部署项目遇到的问题

    在构建maven hibernate时候的exception 错误原因:通过maven dependency引入了hibernate5.2.10 final 而hibernate-core中没有上述该 ...