今天工作上面需要对一个表单进行验证,需要判断中文。在网上看到了很多的方式
- GBK (GB2312/GB18030) x00-xff GBK双字节编码范围 x20-x7f ASCII xa1-xff 中文 x80-xff 中文
- UTF-8 (Unicode) u4e00-u9fa5 (中文) x3130-x318F (韩文 xAC00-xD7A3 (韩文) u0800-u4e00 (日文)
ps: 韩文是大于[u9fa5]的字符
x是十六进制,u是Unicode编码,这种理解对吗
两者之间有什么区别和联系呢
2012年8月15日补充
JavaScript的字符串是使用Unicode编码的,每个字符占用两个字节。编码的方式是Unicode 16,具体是Little-Endian还是Big-Endian则要看操作系统了。所以在针对JavaScript的字符串使用正则时,针对中文使用u4e00-u9fa5
参考文章:
http://demon.tw/programming/javascript-unicode-utf-8.html
关于Unicode 16的Little-Endian和Big-Endian,可以参看维基百科:https://zh.wikipedia.org/wiki/%E5%AD%97%E8%8A%82%E5%BA%8F
原创内容,欢迎转载 😊