掘友等级
获得徽章 5
字节跳动数据平台前端团队
【字节跳动内推啦】
点击链接,选择自己的城市、职位类别,就可以找到自己心仪的岗位啦。
城市-更多里面可以搜索一些上面没有列出来的城市的职位(比如南京),全程帮忙跟踪进度,私信我可跟催跟查进度~
快来投递简历吧!
ant-design里加这种之前未加预警的彩蛋真的合适吗
你已经是个成熟的框架了,应该知道自己不该做什么。。。
另附上解决方案和讨论:github.com
ES9里新增的基于Unicode转义的正则匹配可以帮助我们更简单的匹配中文字符。
我查了一下中文字符对应的Unicode Script是Han,于是我们就可以用这个reg来匹配中文:
/\p{Script=Han}/u
这样我们就可以不用记忆繁琐又不好记的/[\u4e00-\u9fa5]/了,况且这个表达式已经有些年头了,说实话,后来又新增的属性为Han的字符并不在这个范围内,因此这个有年头reg并不一定好使。
我随便从网上找了一个Unicode8.0添加的中文字符“𬬭”,我测了一下两种reg的兼容性:
oldReg=/[\u4e00-\u9fa5]/
newReg=/\p{Script=Han}/u
oldReg.test('abc')
// false
newReg.test('abc')
// false
oldReg.test('普通中文')
// true
newReg.test('普通中文')
// true
oldReg.test('𬬭')
// false
newReg.test('𬬭')
// true
以后要使用哪个更显而易见了吧?
另外附上一个Unicode汉字字符大全
www.unicode.org
可以看一下这个PDF,从524页9FA6至526页(最后一页)用旧匹配方式均无法生效。