依据:全角输入每个字符占用2个字节,半角输入汉字2个字节、字母数字1个字节。

思路:排出输入内容中的中文,剩下的字符的字节数字与减去汉字的长度相等就是半角输入的,否则就是全角输入啦。

  /// <summary>
        /// 判断当前字符串是否为输入法半角模式输入
        /// </summary>
        /// <param name="info">字符串</param>
        /// <returns>是否是半角输入模式</returns>
        public static bool IsHalfAngleMode(String info)
        {
            bool ret = true;

            int infoLength = info.Length;
            int infoByteCount = Encoding.Default.GetByteCount(info);

            /**
             * 字符串中的中文字节数统一按照1个计算(中文全角半角字节正常都是2个)
             */
            int cnCount = 0;  // 字符串出现中文的个数
            for (int i = 0; i < infoLength; i++)
            {
                // 用正则表达式判断也是用汉字的 UNICODE 编码范围,即\u4e00-\u9fbb
                if (Regex.IsMatch(info[i].ToString(), @"[\u4e00-\u9fbb]"))
                {
                    cnCount += 1;
                }
            }
            infoByteCount = infoByteCount - cnCount;

            if (infoByteCount > infoLength)
            {
                ret = false;
            }

            return ret;
        }

C#如何判断当前输入的内容包含全角输入法的内容?相关推荐

  1. java 判断字符和字符串是否为全角字符

    java 判断字符和字符串是否为全角字符 一般这个判断在对未知字符串进行字符转码的时候要用到. // 判断字符串是否为全角String input = "dd";System.ou ...

  2. 不能包含全角 正则_java常用正则表达式

    只能输入数字:"^[0-9]*$". 只能输入n位的数字:"^d{n}$". 只能输入至少n位的数字:"^d{n,}$". 只能输入m~n位 ...

  3. 密码中不能包含全角字符的正则表达式

    String regex = "^((?![^\\x00-\\xff]).)*$"; String str = "aA"; System.out.println ...

  4. Oracle中全角字符串判断,半角字符串和全角字符串之间转换

    之前想找到一个函数能够很容易判断字符串中是否包含全角字符串,但是一直没找到,只能自定义一个函数实现,后来偶然浏览到一个很简单的方法,和大家分享下 --将半角字符串转化为全角字符串 SELECT to_ ...

  5. html输入转换半角,Web前端开发:聊聊input输入框全角和半角应用

    最近在开发一个国际业务的开户注册项目的时候,遇到关于input输入的问题,涉及到全角和半角的问题,刚开始的时候只是按照国内正常的去判断的. 问题 其他国家的user,输入有时候会用全角,会报错,因为接 ...

  6. 笔记本计算机半角数字切换,半角字符怎么输入?如何切换为-全角字符

    半角字符怎么输入?如何切换为-全角字符 发布时间:2017-10-10 18:02 来源:互联网 当前栏目:电脑技巧 现在我们的生活水平在不断的提高,电脑也随之在我们的生活中变得很常见,电脑的功能是比 ...

  7. linux将文件内容全角转半角,字符串半角全角互转详解

    全角和半角之间的互相转换. ASCII的一些知识. \n 回车换行 \t 横向跳到下一制表位置 \v 竖向跳格 \b 退格 \r 回车 \f 走纸换页 \\ 反斜线符"\" \' ...

  8. antd 判断input输入内容是否大于_Python基础语法 | 代码规范amp;判断语句amp;循环语句...

    Python基础语法 代码的执行顺序 从上到下 从左到右 代码规范 模块名,包名,普通数据量一般小写字母,多个单词之间用 _ 连接 不要用系统定义的名称,具有特殊意义的表示符,如:doc,txt之类的 ...

  9. Python编程基础 第七章 编程练习 用户从键盘上输入一个字符串,如果该字符串的内容不是有效的数值,则输出invalid;如果是有效的数值,再判断其是否是整数,如果是整数则输出yes,否则输出no。

    题目内容: 编写程序实现下面功能:用户从键盘上输入一个字符串,如果该字符串的内容不是有效的数值,则输出invalid:如果是有效的数值,再判断其是否是整数,如果是整数则输出yes,否则输出no. 输入 ...

最新文章

  1. ZeroC ICE java异步实现方式(ami/amd)
  2. 数据结构实践——队列数组
  3. matlab画二维颜色深浅,MATLAB scatter 画二维/三维散点图时 用颜色表示数值大小 colorbar
  4. ajax实现二级联动
  5. Java设计模式之迭代器模式
  6. js:插入节点appendChild insertBefore使用方法
  7. C#删除字符串倒数第几个字符后的所有字符串
  8. Linux开发标准LSB简介:Linux Standard Base
  9. [Erlang 0020]网页游戏分线到不分线
  10. 离职10天,面了4家公司,我的感受...
  11. Java-实现简单取色器
  12. java处理paypal支付
  13. 月薪30K的硬件工程师需要哪些技能
  14. 个人web前段学习心得
  15. 如何测试充电宝输出电压-20210127
  16. Okra框架(一) 简介
  17. 2008 go server sql 批处理_Transact-SQL批处理
  18. 关系代数运算_关系代数
  19. DJNZ指令:DJNZ R6,D2 ;
  20. Android中文乱码的分析与解决

热门文章

  1. 程序员的法宝- GitHub(一)
  2. React Native 项目整合 CodePush 完全指南
  3. 19c RAC Duplicate方式静默安装ADG从库
  4. Ubuntu:常用软件和设置
  5. 通过Navicat快速更改数据库名称
  6. python智慧树董付国_智慧树_师魂_大学课后答案
  7. 【每日新闻】百度花十亿打造的春晚活动怎么样?
  8. Unity 物品模型旋转展示
  9. 没有萨拉丁怎么搭配突击队?平民突击队搭配教程
  10. 如何在浏览器中运行 VS Code?