前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >前端基础-匹配中文(utf-8编码)

前端基础-匹配中文(utf-8编码)

作者头像
cwl_java
发布2020-03-26 16:17:30
1.3K0
发布2020-03-26 16:17:30
举报
文章被收录于专栏:cwl_Javacwl_Java

第5章 匹配中文(utf-8编码)

每个字符(中文、英文字母、数字、各种符号、拉丁文、韩文、日文等)都对应着一个Unicode编码。

查看Unicode编码,找到中文的部分,然后获取中文的Unicode编码的区间,就可以用正则匹配了。

前面我们用[a-z]表示小写字母,[0-9]表示数字,这就是一个范围表示,如果有一个数x能够表示第一个中文,有一个数y能够表示最后一个中文,那么[x-y]就可以表示所有的中文了。

中文的Unicode编码从4E00开始,到9FA5结束。

[\u4E00-\u9FA5]这个区间就能够表示中文。

完整的Unicode编码表http://blog.csdn.net/hherima/article/details/9045861

代码语言:javascript
复制
	var str = "你好,世界";
	var res = str.match(/[\u4E00-\u9FA5]/g);
	console.log(res);//["你", "好", "世", "界"]

案例二

解决结巴程序

把“今今今天晚晚晚晚晚晚上吃吃吃吃吃吃鸡”字符串换成单字的形式,即“今天晚上吃鸡”;

核心思想:匹配到重复的字符时,保留一个。

代码语言:javascript
复制
	var str = "今今今天晚晚晚晚晚晚上吃吃吃吃吃吃鸡";
	//今天晚上吃鸡
	var res = str.replace(/([\u4E00-\u9FA5])\1+/g, '$1');
	console.log(res);
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 第5章 匹配中文(utf-8编码)
  • 案例二
    • 解决结巴程序
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档