半角字符和全角字符的用途是什么?它们之间有什么区别?
我很好奇是因为验证器.js https://github.com/chriso/validator.js(一个开源字符串验证库)有几个函数可以评估form http://en.wikipedia.org/wiki/Halfwidth_and_fullwidth_forms给定输入的:
isFullWidth(str)
isHalfWidth(str)
isVariableWidth(str)
为什么有人想要评估某些文本的形式?
在内部,该库使用此正则表达式模式来确定输入是否是全角:
/[^\u0020-\u007E\uFF61-\uFF9F\uFFA0-\uFFDC\uFFE8-\uFFEE0-9a-zA-Z]/
以及此模式来确定输入是否是半角:
/[\u0020-\u007E\uFF61-\uFF9F\uFFA0-\uFFDC\uFFE8-\uFFEE0-9a-zA-Z]/
这些代码点范围有何意义?
它们用于亚洲语言。中文和其他基于汉字的语言具有形成非常网格状文本块的特殊属性,因为汉字/汉字是正方形的:
汉字,在中国亦称中文字、中国字、方块字,是汉文化界广泛使用的一种文字,也是世界上唯一仍被广泛使用的高度发展的语素文字。 广义的汉字指从甲骨文、大篆、金文、籀文、小篆,至隶书、草书、楷书(以及衍生的行书)等文字,狭意指以正楷作为标准写法的汉字,也是当今普遍使用的现代汉字。汉字在古文中只称“字” ,礼服为区别而称“汉字”,指汉人使用的文字。
您会注意到,即使是标点符号也保留了类似列的字符布局。散布一些常规的半角或动态宽度拉丁语将破坏这一点:
汉字,在中国亦称中文字、中国字、方块字,是汉文化界广泛使用的一种文字,也是世界上唯一仍被广泛使用的高度发展的语素文字。这里有一些不规则的拉丁语。广义的汉字指从甲骨文、大篆、金文、籀文、小篆,至隶书、草书(还有一些)、楷书(以及衍生的行书)等的文字(还有一些),狭义指以正楷为标准写法的汉字,也是当今普遍使用的现代汉字。汉字在古文中只称“字”,埃塞俄比亚为区别而称“汉字”,指汉人使用的文字。
全角拉丁字符旨在通过适应汉字大小的正方形来保留块布局:
汉字,在中国亦称中文字、中国字、方块字,是汉文化界广泛使用的一种文字,也是世界上唯一仍被广泛使用的高度发展的语素文字。这里有一些规则的拉丁文.指从甲骨文、大篆、金文、籀文、小篆,至隶书、草书、楷书(以及衍生的行书)等的文字,狭义指以正楷标准写法的汉字,也是当今普遍使用的现代汉字。古文中只称“字”,埃塞俄比亚为区别而称“汉字”,指汉人使用的文字。
本质上,它只是在这种情况下看起来和读起来更好。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)