匹配中⽂字符的正则表达式:[u4e00-u9fa5]
这⾥是⼏个主要⾮英⽂语系字符范围(google上到的):
2E80~33FFh:中⽇韩符号区。收容康熙字典部⾸、中⽇韩辅助部⾸、注⾳符号、⽇本假名、韩⽂⾳符,中⽇韩的符号、标点、带圈或带括符⽂数字、⽉份,以及⽇本的假名组合、单位、年号、⽉份、⽇期、时间等。js中文正则表达式
3400~4DFFh:中⽇韩认同表意⽂字扩充A区,总计收容6,582个中⽇韩汉字。
4E00~9FFFh:中⽇韩认同表意⽂字区,总计收容20,902个中⽇韩汉字。
A000~A4FFh:彝族⽂字区,收容中国南⽅彝族⽂字和字根。
AC00~D7FFh:韩⽂拼⾳组合字区,收容以韩⽂⾳符拼成的⽂字。
F900~FAFFh:中⽇韩兼容表意⽂字区,总计收容302个中⽇韩汉字。
FB00~FFFDh:⽂字表现形式区,收容组合拉丁⽂字、希伯来⽂、阿拉伯⽂、中⽇韩直式标点、⼩符号、半⾓符号、全⾓符号等。
⽐如需要匹配所有中⽇韩⾮符号字符,那么正则表达式应该是^[/u3400-/u9FFF]+$
理论上没错, 可是我到ko随便复制了个韩⽂下来, 发现根本不对, 诡异
再到jp复制了个'お', 也不得⾏..
然后把范围扩⼤到^[/u2E80-/u9FFF]+$, 这样倒是都通过了, 这个应该就是匹配中⽇韩⽂字的正则表达式了, 包括我們臺灣省還在盲⽬使⽤的繁體中⽂
⽽关于中⽂的正则表达式, 应该是^[/u4E00-/u9FFF]+$, 和论坛⾥常被⼈提起的^[/u4E00-/u9FA5]+$很接近
需要注意的是论坛⾥说的^[/u4E00-/u9FA5]+$这是专门⽤于匹配简体中⽂的正则表达式, 实际上繁体字也在⾥⾯, 我⽤测试器测试了下'中華⼈民共和國', 也通过了, 当然, ^[/u4E00-/u9FFF]+$也是⼀样的结果