如何使用javascript转义正则表达式特殊字符? [复制]

2024-01-27

我需要使用 java 脚本转义正则表达式特殊字符。我怎样才能实现这一点?任何帮助都值得赞赏。


感谢您的快速回复。但是我需要转义正则表达式的所有特殊字符。我已经尝试过这段代码,但我无法达到结果。

RegExp.escape=function(str)
            {
                if (!arguments.callee.sRE) {
                    var specials = [
                        '/', '.', '*', '+', '?', '|',
                        '(', ')', '[', ']', '{', '}', '\\'
                    ];
                    arguments.callee.sRE = new RegExp(
                    '(\\' + specials.join('|\\') + ')', 'gim'
                );
                }
                return str.replace(arguments.callee.sRE, '\\$1');

            }

function regExpFind() {
            <%--var regex = new RegExp("\\[munees\\]","gim");--%>
                    var regex= new RegExp(RegExp.escape("[Munees]waran"));
                    <%--var regex=RegExp.escape`enter code here`("[Munees]waran");--%>
                    alert("Reg : "+regex);
                }

这段代码有什么问题?请指导我。


Use the \用于转义在正则表达式中具有特殊含义的字符。

要使其自动化,您可以使用以下命令:

function escapeRegExp(text) {
  return text.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, '\\$&');
}

Update:现在有一个提议标准化此方法,可能在 ES2016 中:https://github.com/tc39/proposal-regex-escaping https://github.com/tc39/proposal-regex-escaping

Update:上述提案被拒绝(但 2023 年重写正在进行中),所以现在继续自己实现。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用javascript转义正则表达式特殊字符? [复制] 的相关文章

  • 计算 HH:MM:SS 中两个日期之间的时间差 javascript

    我用 JavaScript 创建了一个计时器应用程序 首先 它使用当前的 UTC 日期来初始化计时器并提供一些参考 这是代码 on timer function e var self this if e target hasClass pt
  • Unicode、正则表达式和 PyPy

    我写了一个程序来添加 有限 统一码支持 https stackoverflow com q 1832893 520779到 Python 正则表达式 虽然它在 CPython 2 5 2 上工作正常 但在 PyPy 上不起作用 1 5 0
  • Safari 不触发表单提交

    对于一个项目 我有两个选择表单字段 它们通过 jquery 触发器 提交 发送 这在 Firefox 和 Chrome 中运行良好 但在 Safari 中没有任何反应 这是 HTML 代码
  • python:正则表达式匹配文件扩展名

    您好 我正在尝试获取 url 中调用的文件的扩展名 例如 wp includes js jquery jquery js ver 1 3 2 HTTP 1 1 并获取传递到文件的查询参数 延期的最佳方式是什么 urlparse urlpar
  • Backbone Collection 和 Marionette CompositeView 中未定义的模型原型

    尝试从值列表填充集合时 我收到有关集合的错误model s prototype未定义 看着这个问题是关于类似问题的 https stackoverflow com q 16126195 1663942 我已经检查过模型确实已创建before
  • 如何将毫秒转换为可读的日期?

    下列 new Date 1324339200000 toUTCString Outputs Tue 20 Dec 2011 00 00 00 GMT 我需要它返回Dec 20 除了我可以使用的更好的方法之外toUTCString 我正在寻找
  • 如何使用 javascript/ASP.NET/CSS 旋转和淡入淡出背景图像

    我需要随机淡入淡出背景图像 这将是一个定时函数 例如每 5 秒一次 我需要使用 ASP NET Javascript CSS 或全部三者来完成此操作 请大家帮帮我 谢谢 Cycle 一个 jQuery 插件 是一个非常灵活的图像旋转解决方案
  • 优化重叠矩形的绘制

    我有很多矩形 有些与其他矩形重叠 每个矩形都有一个绝对 z 顺序和一个colour 每个 矩形 实际上是粒子效果 网格或纹理的轴对齐边界框 并且可能是半透明的 但只要您不尝试剔除其他矩形后面的矩形 就更容易抽象地思考彩色矩形 所以我将在问题
  • 从字符串中提取电子邮件地址

    我有一个像这样的字符串 Francesco Renga lt email protected cdn cgi l email protection gt 我只需要提取电子邮件 即 电子邮件受保护 cdn cgi l email protec
  • 如何使用 RSpec 测试 javascript 重定向?

    我正在使用 xhr post 与控制器交互 并且我期待重定向 在 js erb 中 我有 window location href address 手动测试 浏览器会正确重定向 我如何使用 RSpec 测试它 response should
  • 将 MVC 操作结果发送到打印机

    我有一个带有操作的控制器 SomeController ActionToBePrinted ActionToBePrinted 返回一个 html 视图 当按下按钮时 从普通的 mvc razor 视图调用此操作 当按下按钮时 我将如何将视
  • 如何从矩形点计算旋转角度?

    我有4分1 2 3 4闭合一个矩形 这些点按以下方式排列在数组中 x1 y1 x2 y2 x3 y3 x4 y4 我遇到的问题是矩形可以旋转一定角度 如何计算原始点 灰色轮廓 和角度 我试图在 javascript css3 transfo
  • 无法将中间件与 Firebase 和 NuxtJS 3 一起使用

    我正在尝试在示例项目中使用 Firebase 身份验证 身份验证按预期工作 但是一旦我想使用中间件来阻止用户访问管理页面或在已经登录的情况下访问登录页面 这是不可能的 我已经尝试了几个小时 但没有任何效果 这是我的package json
  • 版本差异? Java 中的正则表达式转义

    看来正则表达式转义在不同版本的 Java 中的工作方式不同 在 Java openjdk 16 0 1 中编译工作正常 在 Java openjdk 11 0 11 中抛出此编译错误 test java 15 error illegal e
  • 用于验证网络路径的正则表达式 PHP、jQuery、JavaScript、Ruby

    尝试找出用于验证网络路径的正则表达式 即 comp xyz or comp or comp x y z storage或者所有部分都更长的东西 但希望能够传达其要点 我目前拥有的是一个简单的输入字段 用户可以通过它传递信息 事情是我不希望他
  • 如何在没有查询参数的情况下重新加载页面?

    假设我想重新加载www domain com abc num 4 但我想重新加载www domain com abcONLY 问号后没有所有内容 window location window location href split 0
  • 如何找出javascript中加载了哪些javascript?

    继另一个问题的评论之后 我问自己是否有办法获取页面上加载的所有 js 代码的列表 就像 Firebug 或 chrome Inspector 所做的那样 有没有一种纯javascript的方法 一种方法是抓取脚本标签 但这样你可能会错过动态
  • 来自 ajax 的 Bootstrap 表 json

    我有 ajax 和 bootstrap 表的问题 我有一个 ajax JSON 我用这个方法调用 document ready function ajax url php process php method fetchdata dataT
  • 使用来自Processing-JS的JSON

    我想使用编写一个应用程序处理 JS http processingjs org 并且我希望能够使用服务器端数据加载它 我还没有编写服务器端 所以我可以使用任何东西 但似乎明显的 AJAX 事情是使用 JSON 将数据上传到页面中 如何从我的
  • Page_ClientValidate 正在验证多次。

    我的问题是 验证摘要消息 警报 显示两次 我无法弄清楚原因 请帮忙 这是代码 function validate javascript function if typeof Page ClientValidate function var

随机推荐

  • 如何消除 UIAlertController 的延迟?

    点击表格单元格后 警报视图显示有 4 到 5 秒的延迟 下面是代码 func tableView tableView UITableView didSelectRowAt indexPath IndexPath let cell table
  • 在 Android Oreo 中调用相机意图后正在重新创建父 Activity

    我正在使用媒体意图捕获图像 一旦过程完成 结果将被发送回父级 上述过程在 Nougat Os 上正常工作 但在 Oreo 中 父活动再次重新创建 我该如何解决这个问题 上述过程在 Nougat Os 上正常工作 但在 Oreo 中 父活动再
  • Windows Phone - 如何双击退出?

    我正在学习开发 Windows Phone 应用程序 我按照本教程开始使用基于浏览器的应用程序 http blogs msdn com b jaimer archive 2011 02 04 back button press when u
  • 在 if 语句中声明标量?

    为什么我不能在 if 语句中声明标量变量 和变量的作用域有关系吗 每个街区 在 Perl 中创建一个新的作用域 这包括裸块 子例程块 BEGIN 块 控制结构块 循环结构块 内联块 map grep eval 块和语句修饰符循环体 如果块具
  • 使用类型变量强制转换对象

    当然 下面的方法是行不通的 有没有一种可能的方法 与此非常相似 Type newObjectType typeof MyClass var newObject givenObject as newObjectType newObjectTy
  • Webpack-dev-server 编译文件,但不刷新或使编译后的 javascript 可用于浏览器

    我正在尝试使用 webpack dev server 来编译文件并启动开发 Web 服务器 In my package json我将脚本属性设置为 scripts dev webpack dev server hot inline So t
  • 通过反射从其字符串创建任何类型实例

    想象一下以下场景 用户将一个字符串传递给应用程序 该字符串表示 NET 类型 例如string or System IntPtr 假设所讨论的应用程序有权访问定义给定类型的程序集 它可以根据字符串创建给定类型的实例 我已经成功创建了这样一个
  • 如何查找列中的第一个非零值?

    在 A 列中 第一个值为 0 第二个值为 0 第三个值为 17 第四个值为 0 第五个值为 32 在这种情况下 第一个非零值是17 如何通过公式计算它 在单元格 B1 中 INDEX A1 A5 MATCH TRUE INDEX A1 A5
  • 启动 VScode 时访问被拒绝 Go 代码在未调试和已调试的情况下运行

    我正在尝试为 Go 设置一个新的 Windows 开发机器 这通常是一个非常简单的过程 但遇到了很多麻烦 当我尝试在不调试的情况下运行时 出现以下错误 fork exec C Users CAMIWIL AppData Local Temp
  • enum 与 constexpr 用于类内的实际静态常量

    让我首先陈述我的意图 在过去的 C 时代 我们的代码如下 class C public enum SOME VALUE 27 然后我们可以使用SOME VALUE在我们的代码中作为编译时常量以及编译器会看到的任何地方C SOME VALUE
  • 为什么xpath又找到排除的节点?

    考虑这个页面
  • 来自内部存储的电子邮件

    在我的应用程序中 我将一个文件写入内部存储 如上所述安卓开发者 http developer android com guide topics data data storage html filesInternal 然后我想通过电子邮件将
  • 保证 Ajax 调用参数值正确的最佳方法

    我正在开发一个需要一些 ajax 调用以提高灵活性和性能的网站 我的 ajax 调用是为了排名系统 我需要使用 ajax 处理三个输入值 storeID clientID orderID 要使用 ajax 提交操作 我想确保发送的参数值没有
  • .Net Core 2.1不读取用户机密

    我正在 Mac 上运行 net core 2 1 应用程序 并且尝试访问我的连接字符串 该字符串应该被我的用户机密覆盖 csproj 文件包含一个 guid
  • 使用 Python 将 CSV 文件导入 sqlite3 数据库表

    我有一个 CSV 文件 我想使用 Python 将该文件批量导入到我的 sqlite3 数据库中 命令是 import 但似乎不能这样工作 谁能给我一个如何在 sqlite3 中做到这一点的例子 我使用 Windows 以防万一 谢谢 im
  • 将图像添加到警报视图

    当用户按下添加按钮时 我会弹出一个警报视图 如何将图像添加到警报视图 我添加了一些从堆栈溢出中引用的代码 我的保存按钮被图像替换 并且图像看起来是蓝色的 警报视图代码 var alert UIAlertController title Sp
  • 直线运动卡顿

    我创建了简单的 与帧无关的 可变时间步长的线性运动Direct3D9 using ID3DXSprite 大多数用户无法注意到它 但在某些 包括我的 计算机上它经常发生 有时甚至会很卡顿 口吃发生于VSync启用和禁用 我发现同样的情况发生
  • UIToolbar 中工具栏项目之间的分隔符

    如何在 UIToolbar 中的按钮之间添加分隔符 示例图像显示在下面的链接中 我使用自定义视图按钮完成此操作 背景为 1 像素宽 UILabel label UILabel alloc initWithFrame CGRectMake 0
  • 通过 initWithRootViewController 以外的方法设置 UINavigationController 的 rootViewController

    我该如何设置rootViewController of UINavigationController通过除initWithRootViewController 我想用initWithNavigationBarClass toolbarCla
  • 如何使用javascript转义正则表达式特殊字符? [复制]

    这个问题在这里已经有答案了 我需要使用 java 脚本转义正则表达式特殊字符 我怎样才能实现这一点 任何帮助都值得赞赏 感谢您的快速回复 但是我需要转义正则表达式的所有特殊字符 我已经尝试过这段代码 但我无法达到结果 RegExp esca