当前位置: 首页 > 面试题库 >

JavaScript + Unicode正则表达式

叶智
2023-03-14
问题内容

如何在JavaScript中使用支持Unicode的正则表达式?

例如,应该有类似的东西\w可以匹配Letters或Marks类别中的任何代码点(而不仅仅是ASCII的),并且希望具有[[P *]]这样的过滤器来标点,等等。


问题答案:

ES 6的情况
即将发布的ECMAScript语言规范,版本6,包含可识别Unicode的正则表达式。必须使用u正则表达式上的修饰符启用支持。请参阅ES6中支持Unicode的正则表达式。

不过,在ES 6完成并在浏览器供应商中广泛采用之前,你仍然是一个人。更新:现在有一个名为regexpu的编译器,可将ES6 Unicode正则表达式转换为等效的ES5。它可以用作构建过程的一部分。在线试用。

ES 5及以下版本的情况
即使JavaScript对Unicode字符串进行操作,它也不会实现支持Unicode的字符类,并且没有POSIX字符类或Unicode块/子范围的概念。

我只是针对“常规标点”和“补充标点”子范围进行了此操作,结果如我期望的那样简单明了:

[\u2000-\u206F\u2E00-\u2E7F]


 类似资料:
  • 问题内容: 我有一个脚本,可以分析电视剧集的文件名(例如show.name.s01e02.avi),获取剧集的名称(从www.thetvdb.com API),然后自动将其重命名为更好的名称(显示名-[01x02 ] .avi) 该脚本可以正常工作,直到您尝试在具有Unicode显示名称的文件上使用该脚本为止(我从未真正考虑过这一点,因为我拥有的所有文件都是英文的,所以大部分都属于) 如何允许正则

  • 问题内容: 我需要从字符串“ بِسْمِ اللَّهِ الرَّحْمَٰنِ الرَّحِيمِ”中删除一些Unicode符号 我知道他们肯定在这里。我试过了: 但这不起作用。字符串保持不变。我究竟做错了什么? 问题答案: 您使用的是python 2.x还是3.0? 如果您使用的是2.x,请尝试使用“ u”使正则表达式字符串成为unicode-escape字符串。由于它是正则表达式,因此

  • 正则练习 1.生成一个正则表达式regexObj 描述字符串规则的表达式,两种方式 直接量: /pattren/attrs(/规则/属性) 对象构造方式:new RegExp(pattern,arrtes) (/规则/属性) 2.regexObj.test(str) 测试正则表达式regexObj与指定字符串是否匹配 /10086/.test('10086') //true /10086/.tes

  • 本文向大家介绍javascript正则表达式简介,包括了javascript正则表达式简介的使用技巧和注意事项,需要的朋友参考一下 概述 正则表达式是事先声明一组规则,用于匹配字符串中的字符。 基本语法 元字符 在正则表达式的模式中,有一些字符是有特殊含义的,被称为元字符。元字符都是针对单个字符匹配的。 \w 匹配大小写英文字符及数字 0 到 9 之间的任意一个及下划线,相当于 [a-zA-Z0-

  • 本文向大家介绍JavaScript 正则表达式(笔记),包括了JavaScript 正则表达式(笔记)的使用技巧和注意事项,需要的朋友参考一下 一 什么是正则表达式 // 正则表达式(regular expression)是一个描述字符模式的对象; // JS定义RegExp类表示正则表达式; // String和RegExp都定义了使用正则表达式进行强大的模式匹配和文本检索与替换的函数; 二 创

  • 本文向大家介绍学习JavaScript正则表达式,包括了学习JavaScript正则表达式的使用技巧和注意事项,需要的朋友参考一下 JavaScript正则表达式学习: 有个在线调试正则的工具。下面的所有示例代码,都可以在codepen上查看到。 1.创建正则表达式 1)正则表达式字面量在脚本加载后编译。若你的正则表达式是常量,使用这种方式可以获得更好的性能。 2)使用构造函数,提供了对正则表达式