假期老师布置了一个大作业,需要用正则表达式匹配一下 uniocde编码的汉字,但是网上千篇一律都是 /[\u4e00-\u9fa5]/ ,结果当然没有通过老师的作业检查(当然问题不仅仅只有这一点)。
直到搜到一个大牛的博客,才终于搞懂了怎么匹配汉字。

网上广为流传的/[\u4e00-\u9fa5]/ 其实只是cjk统一表意文字的基本部分,并且版本还只是1.1 的版本,即就是20年前的版本。 :) 气skr了
最新版的链接在这里。

简而言之,要解决这个问题,首先要搞懂 unicode 对汉字的定义, 注意区分汉字和汉文的区别(大牛博客里讲了)。
然后就可以查找对应的unicode使用范围了。
但是。。。
时光飞逝,怎么写出一个可以自动与时俱进的匹配汉字的正则表达式呢?答案就是 Unicode属性类
顾名思义,就是将满足一定属性条件的unicode编码放在一起,这样书写正则表达式的时候就不用一个个的去取对应的范围了,比如我要找汉字
使用unicode属性类就可以直接写成

/\p{Unified_Ideograph}/u

但是貌似现在并不是所有浏览器都支持这种正则表达式的写法,如果不支持就需要使用转换器进行优雅降级。

js正则表达式匹配汉字相关推荐

  1. JavaScript 正则表达式匹配汉字

    一个可能有 20 年历史的正则表达式 在谷歌搜索「JavaScript 正则表达式匹配汉字」的时候,前几条结果全都是/[\u4e00-\u9fa5]/.没有人怀疑这个正则表达式有什么问题,那么在 20 ...

  2. js正则表达式匹配span标签

    1.js正则表达式匹配span标签 const spans = htmlStr.match(/<span (.*?)>(.*?)<\/span>/g) 2.js正则表达式–获取 ...

  3. JS正则表达式匹配手机号

    JS中常用正则表达式举例一 JS正则表达式匹配手机号 大家好,有关正则表达式的基本知识在其它文章中已做了介绍: JS属性&方法详解 下面一起来看看JS中利用正则表达式匹配字符串的常用例子: 手 ...

  4. python正则匹配固定汉字_Python用正则表达式匹配汉字

    原博文 2019-11-07 19:54 − #### Python用正则表达式匹配汉字 ##### 匹配多个汉字,不包括空格 ```python import re res = re.match(r ...

  5. python - 正则表达式匹配汉字

    python - 正则表达式匹配汉字 Unicode 编码中汉字编码的范围在 \u4e00 到 \u9fa5之间 所以 匹配任意汉字: [\u4e00-\u9fa5] 匹配某个汉字可以把汉字转换成Un ...

  6. 使用正则表达式匹配汉字字符串

    使用正则表达式匹配汉字字符串: 1.一个汉字:[\u4E00-\u9FA5] 2.多个汉字,包括空格:[\u4E00-\u9FA5\\s]+ 3.多个汉字,不包括空格:[\u4E00-\u9FA5]+ ...

  7. js正则表达式匹配字符串与优化过程

    前言 有时候需要实现对js源文件中的url字符串做拦截预处理,或者前端js语法高亮,或者需要对动态加载的关键源码做混淆保护,在某些步骤实现之前,有一个步骤是需要提炼出所有的合法字符串. 目标:检测源文 ...

  8. Js读取Cookie中指定字段的值,Js中读取某个Cookie,Js中根据Cookie的key得到对应的value,Js正则表达式匹配指定的Cookie

    Js中想要读取Cookie中指定字段的值,可以遍历Cookie根据指定Key提取Cookie,或者使用正则表达式匹配Cookie,代码如下: /*** @description: 遍历cookie得到 ...

  9. js正则 匹配 汉字、数字、英文字母、下划线 正则表达式

    1.由数字.26个英文字母或者下划线组成的字符串: ^[0-9a-zA-Z_]{1,}$ 2.非负整数(正整数 + 0 ): ^/d+$ 3.正整数: ^[0-9]*[1-9][0-9]*$ 4.非正 ...

最新文章

  1. 《Linux From Scratch》第二部分:准备构建 第五章:构建临时文件系统- 5.11. Tcl-8.6.3...
  2. linux mysql 1366_Linux MySQl 5.7.17 MySQL ERROR 1366(HY000):Incorrect string value 解决方法
  3. 使用 FOREACH 迭代具有依赖类型的序列
  4. 垃圾回收机制之复制算法
  5. mobi格式电子书_没有kindle,如何用手机阅读mobi格式的电子书?
  6. 第一百二十期:终于有篇看的懂的B树文章了!
  7. linux安装pl sql,Linux上安装配置InstantClient及64位系统Pl/SQL配置
  8. centos之mysql安装配置使用
  9. audiojs--跨浏览器的HTML音频播放器(可自定义样式)
  10. dmg镜像如何写入u盘_最全macOS官方全家桶原版系统镜像
  11. GBase数据库安装前一般检查
  12. 基于Python的坦克大战小游戏
  13. 从零开始用阿里云服务器搭建网页
  14. kktv电视剧鸿蒙,KKTV K70系列新品上市 京东、天猫、苏宁易购同步预售
  15. Python高级全栈开发实战 老男孩课程S16+路飞学城项目+女神串讲 Python全栈直通车课程
  16. C# ManualResetEventSlim类
  17. 定义结构体时的初始化默认值
  18. Refused to display in a frame because it set ‘X-Frame-Options‘ to ‘sameorigin‘.
  19. 巴塞罗那WASM IO大会
  20. Seafile开源文件同步和分享SAAS云盘

热门文章

  1. 小程序集成Three.js,使用npm安装gsap动画库
  2. MODA 多目标蜻蜓算法
  3. 快速校验非法字符工具
  4. 搜索优化之四叉树算法(一)
  5. 各种SQL子查询实例
  6. 软考程序员 c java 二选一_往年软考程序员试题分析及备考建议
  7. 计算机网络之网络层7
  8. tekton task资源
  9. 实战:k8s中基于角色的权限访问控制-RBAC(成功测试-博客输出)-20211005
  10. 安装office时提示:安装程序包的语言不受系统支持