半 Angular 字符和全 Angular 字符的用途是什么,它们之间有什么区别?
我很好奇,因为 validator.js (一个开源字符串验证库)有几个函数可以评估 form给定输入的:
isFullWidth(str)
isHalfWidth(str)
isVariableWidth(str)
为什么有人想要评估某些文本的形式?
在内部,该库使用此正则表达式模式来确定输入是否为全 Angular :
/[^\u0020-\u007E\uFF61-\uFF9F\uFFA0-\uFFDC\uFFE8-\uFFEE0-9a-zA-Z]/
以及确定输入是否为半 Angular 的模式:
/[\u0020-\u007E\uFF61-\uFF9F\uFFA0-\uFFDC\uFFE8-\uFFEE0-9a-zA-Z]/
这些代码点范围有什么意义?
最佳答案
它们用于亚洲语言。中文和其他基于汉字的语言具有形成非常网格状文本 block 的特殊属性,因为汉字/汉字是正方形的:
漢字,在中國亦称中文字、中国字、方塊字,是漢字文化圈廣泛使用的一種文字,也是世界上唯一仍被廣泛使用的高度發展的語素文字。廣義的漢字指從甲骨文、大篆、金文、籀文、小篆,至隶书、草书、楷书(以及衍生的行书)等的文字,狹義指以正楷作為標準寫法的漢字,也是今日普遍使用的現代漢字。漢字在古文中只稱「字」,少數民族為區別而稱「漢字」,指漢人使用的文字。
您会注意到,即使是标点符号也会保留字符的列状布局。散布一些常规的半 Angular 或动态宽度拉丁文会破坏它:
漢字,在中國亦称中文字、中国字、方塊字,是漢字文化圈廣泛使用的一種文字,也是世界上唯一仍被廣泛使用的高度發展的語素文字。Here's some irregular latin. 廣義的漢字指從甲骨文、大篆、金文、籀文、小篆,至隶书、草书 (and here's some more)、楷书(以及衍生的行书)等的文字 (and some more),狹義指以正楷作為標準寫法的漢字,也是今日普遍使用的現代漢字。漢字在古文中只稱「字」,少數民族為區別而稱「漢字」,指漢人使用的文字。
全 Angular 拉丁字符旨在通过适合汉字大小的正方形来保留 block 布局:
漢字,在中國亦称中文字、中国字、方塊字,是漢字文化圈廣泛使用的一種文字,也是世界上唯一仍被廣泛使用的高度發展的語素文字。Here's some regular latin.廣義的漢字指從甲骨文、大篆、金文、籀文、小篆,至隶书、草书、楷书(以及衍生的行书)等的文字,狹義指以正楷作為標準寫法的漢字,也是今日普遍使用的現代漢字。漢字在古文中只稱「字」,少數民族為區別而稱「漢字」,指漢人使用的文字。
本质上,它只是在这种情况下看起来和读起来更好。
关于javascript - 半 Angular 字符和全 Angular 字符的用途是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28120607/