C#如何判断当前输入的内容包含全角输入法的内容?
依据:全角输入每个字符占用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#如何判断当前输入的内容包含全角输入法的内容?相关推荐
- java 判断字符和字符串是否为全角字符
java 判断字符和字符串是否为全角字符 一般这个判断在对未知字符串进行字符转码的时候要用到. // 判断字符串是否为全角String input = "dd";System.ou ...
- 不能包含全角 正则_java常用正则表达式
只能输入数字:"^[0-9]*$". 只能输入n位的数字:"^d{n}$". 只能输入至少n位的数字:"^d{n,}$". 只能输入m~n位 ...
- 密码中不能包含全角字符的正则表达式
String regex = "^((?![^\\x00-\\xff]).)*$"; String str = "aA"; System.out.println ...
- Oracle中全角字符串判断,半角字符串和全角字符串之间转换
之前想找到一个函数能够很容易判断字符串中是否包含全角字符串,但是一直没找到,只能自定义一个函数实现,后来偶然浏览到一个很简单的方法,和大家分享下 --将半角字符串转化为全角字符串 SELECT to_ ...
- html输入转换半角,Web前端开发:聊聊input输入框全角和半角应用
最近在开发一个国际业务的开户注册项目的时候,遇到关于input输入的问题,涉及到全角和半角的问题,刚开始的时候只是按照国内正常的去判断的. 问题 其他国家的user,输入有时候会用全角,会报错,因为接 ...
- 笔记本计算机半角数字切换,半角字符怎么输入?如何切换为-全角字符
半角字符怎么输入?如何切换为-全角字符 发布时间:2017-10-10 18:02 来源:互联网 当前栏目:电脑技巧 现在我们的生活水平在不断的提高,电脑也随之在我们的生活中变得很常见,电脑的功能是比 ...
- linux将文件内容全角转半角,字符串半角全角互转详解
全角和半角之间的互相转换. ASCII的一些知识. \n 回车换行 \t 横向跳到下一制表位置 \v 竖向跳格 \b 退格 \r 回车 \f 走纸换页 \\ 反斜线符"\" \' ...
- antd 判断input输入内容是否大于_Python基础语法 | 代码规范amp;判断语句amp;循环语句...
Python基础语法 代码的执行顺序 从上到下 从左到右 代码规范 模块名,包名,普通数据量一般小写字母,多个单词之间用 _ 连接 不要用系统定义的名称,具有特殊意义的表示符,如:doc,txt之类的 ...
- Python编程基础 第七章 编程练习 用户从键盘上输入一个字符串,如果该字符串的内容不是有效的数值,则输出invalid;如果是有效的数值,再判断其是否是整数,如果是整数则输出yes,否则输出no。
题目内容: 编写程序实现下面功能:用户从键盘上输入一个字符串,如果该字符串的内容不是有效的数值,则输出invalid:如果是有效的数值,再判断其是否是整数,如果是整数则输出yes,否则输出no. 输入 ...
最新文章
- ZeroC ICE java异步实现方式(ami/amd)
- 数据结构实践——队列数组
- matlab画二维颜色深浅,MATLAB scatter 画二维/三维散点图时 用颜色表示数值大小 colorbar
- ajax实现二级联动
- Java设计模式之迭代器模式
- js:插入节点appendChild insertBefore使用方法
- C#删除字符串倒数第几个字符后的所有字符串
- Linux开发标准LSB简介:Linux Standard Base
- [Erlang 0020]网页游戏分线到不分线
- 离职10天,面了4家公司,我的感受...
- Java-实现简单取色器
- java处理paypal支付
- 月薪30K的硬件工程师需要哪些技能
- 个人web前段学习心得
- 如何测试充电宝输出电压-20210127
- Okra框架(一) 简介
- 2008 go server sql 批处理_Transact-SQL批处理
- 关系代数运算_关系代数
- DJNZ指令:DJNZ R6,D2 ;
- Android中文乱码的分析与解决