包含一个字符串且不包含另一字符串的行的正则表达式

2024-03-01

我有以下正则表达式可以方便地匹配包含以下内容的所有行console.log() or alert()在支持 PCRE 的编辑器中打开的任何 javascript 文件中都可以使用该函数。

^.*\b(console\.log|alert)\b.*$

但我遇到很多文件包含window.alert()用于提醒重要消息的行,我不想删除/替换它们。

所以问题是如何正则表达式匹配(单行正则表达式,无需频繁运行)包含的所有行console.log() and alert()但不包含单词window。另外如何转义无法转义的圆括号(圆括号)\,使它们成为字符串文字的一部分?

我尝试遵循正则表达式但徒劳:

^.*\b(console\.log|alert)((?!window).)*\b.*$

您应该使用负查找头,如下所示:

^(?!.*window\.).*\b(console\.log|alert)\b.*$

负向查找头将断言如果字符串是不可能匹配的window.存在。

正则表达式演示 https://regex101.com/r/fN4iJ7/1

至于括号,你可以用反斜杠转义它们,但是因为你有一个单词边界字符,所以如果你放转义的括号,它不会匹配,因为它们不是单词字符。

元字符 \b 是一个锚点,就像插入符号和美元符号一样。 它在称为“单词边界”的位置进行匹配。这场比赛 是零长度。

三种不同的位置都可以作为单词边界:

  • 在字符串中的第一个字符之前,如果第一个字符是 单词字符。
  • 在字符串中的最后一个字符之后,如果最后一个 字符是单词字符。
  • 在字符串中的两个字符之间, 其中一个是单词字符,另一个不是单词字符。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

包含一个字符串且不包含另一字符串的行的正则表达式 的相关文章

  • Chart.js 在初始化时设置活动段

    我正在使用 Chart js v2 并且尝试在加载图表时模拟圆环图上某个段的 悬停状态 因此看起来有一个部分已突出显示 我已经搜索和梳理了代码一天 但找不到一个好的方法来做到这一点 提前致谢 设置片段的悬停样式有点令人困惑 因为它没有真正记
  • 在 contenteditable div 中选择范围

    我有一个contenteditablediv 和其中的一些段落 这是我的代码 div style border solid 1px black width 300px height 300px div Hello world div div
  • Eslint errorring 导入没有扩展名的 jsx

    我正在尝试在 es6 中导入 jsx 文件而不需要 jsx 扩展名 import LoginErrorDialog from LoginErrorDialogView Not import LoginErrorDialog from Log
  • 如何修改每个JSON对象javascript

    我想修改里面的每个 JSON 值cooldown object cooldown user 1 This user2 0 This 在 Javascript 中使用 for 语句 我研究了好几个小时 只找到了内部的 blocks Edit
  • 如何在react-bootstrap中禁用表单提交的

    在下面的代码片段中 我有许多文本类型的输入表单 如果用户点击 我似乎会得到相同的合成事件 就像他们按下提交按钮一样 我想忽略作为表单提交 只允许一个人按下 提交 按钮 我删除了一些表单组以减少示例 在所有情况下 按钮或 ENTER 键 e
  • 图像无法在带有 DOM 的 IE 中加载:控制台中的 7009 错误(无法解码)

    当在 IE 中的单个页面上加载许多图像时 在 IE11 中重现 其中一些图像开始加载失败 并在控制台中出现类似以下警告的内容 DOM7009 无法解码 URL 处的图像 某些唯一的 url 当我查看网络流量时 似乎确实从服务器收到了每个图像
  • 隐藏 Div 的父级

    我只是想隐藏父divcomments section div class content content green div div div 我试过这个 document getElementById comments section pa
  • Bootstrap按钮加载+Ajax

    我正在使用 Twitter Bootstrap 的按钮加载状态 http twitter github com bootstrap javascript html buttons http twitter github com bootst
  • 设置 cookie 时中断 JavaScript 执行

    当设置 cookie 时 是否可以始终中断浏览器开发人员工具中的 javascript 执行 无需显式设置 JS 断点 document cookie 在 html head 块的开头添加此代码片段效果很好
  • Chrome 扩展程序在代码中使用 client_secret

    我正在开发具有自己的 oAuth 授权的 Google Chrome 扩展 当然 我必须使用 client id 和 client secret 作为请求令牌 有什么办法可以向用户隐藏这些数据吗 由于此请求只是 javascript 源代码
  • Javascript split 不是一个函数

    嘿朋友们 我正在使用 javascript sdk 通过 jQuery facebook 多朋友选择器在用户朋友墙上发布信息 但是我收到此错误friendId split 不是函数 这是我的代码 function recommendToFr
  • window.location 和 location.href 之间的区别

    我对之间的区别感到困惑window location and location href 两者似乎都以相同的方式行事 有什么不同 window location是一个对象 它保存有关当前文档位置的所有信息 主机 href 端口 协议等 lo
  • 为什么我们在打字稿中使用 HTMLInputElement ?

    我们为什么使用 document getElementById ipv as HTMLInputElement value 代替 document getElementById ipv value 功能getElementById返回具有类
  • 有没有办法在 onclick 触发时禁用 iPad/iPhone 上的闪烁/闪烁?

    所以我有一个有 onclick 事件的区域 在常规浏览器上单击时 它不会显示任何视觉变化 但在 iPad iPhone 上单击时 它会闪烁 闪烁 有什么办法可以阻止它在 iPad iPhone 上执行此操作吗 这是一个与我正在做的类似的示例
  • 可以设置标题样式吗? (并且使用CSS或js?)[重复]

    这个问题在这里已经有答案了 我想知道是否可以设计一个title a href title This is a title Hello a 样式问题有两个方面 文本格式 编码 我猜这是可能的 所以在问题中这样做 工具提示样式 你能把它弄大一点
  • Javascript 假值(null、未定义、false、空字符串:“”或 '' 和 0)和比较(==)运算符 [重复]

    这个问题在这里已经有答案了 当我使用任何一个值时 null undefined false 0 in a if陈述 它总是被评估为谬误 false 另外 这些值的否定 null undefined false 0 in a if语句总是被评
  • 如何隐藏/禁用 Highcharts.js 中的图例框?

    我想问是否可以使用 HighCharts js 库隐藏图表中的所有图例框 var chart object chart renderTo render to type graph type colors graph colors title
  • 如何用另一个响应替换窗口的 URL 哈希?

    我正在尝试使用替换方法更改哈希 URL document location hash 但它不起作用 function var anchor document location hash this returns me a string va
  • JavaScript 相对路径

    在第一个 html 文件中 我使用了一个变量类别链接 var categoryLinks Career prospects http localhost Landa DirectManagers 511 HelenaChechik Dim0
  • 如何在执行新操作时取消先前操作的执行?

    我有一个动作创建器 它会进行昂贵的计算 并在每次用户输入内容时调度一个动作 基本上是实时更新 但是 如果用户输入多个内容 我不希望之前昂贵的计算完全运行 理想情况下 我希望能够取消执行先前的计算并只执行当前的计算 没有内置功能可以取消Pro

随机推荐

  • EF6 CodeFirst 我的 [Key] Id 列未像标识列那样自动递增

    我有几个类需要从拥有 Id 的公共基类派生 暂时忽略除其中一个之外的所有内容 假设我们有 public class MyBase Key public int Id get set public class MyName MyBase pu
  • 字符串作为模型

    我认为这应该是一个更容易的任务 Edit 直到今天 Asp Net MVC 似乎还无法针对这种情况提供一个简洁的解决方案 如果您想传递一个简单的字符串作为模型 并且不必定义更多的类和东西来这样做 有任何想法吗 传递简单字符串作为模型 htt
  • 对齐宏内核

    我无法理解这个宏的作用 这些定义在linux kernel但我的怀疑与此无关 我无法理解什么是 x mask mask 线确实如此 define ALIGN x a ALIGN MASK x typeof x a 1 define ALIG
  • 获取 span 元素填充 div 中的空间

    我正在尝试做这样的事情 fixed width Title1 value1 Title2 another value Another title yet another value 这是我的 html 示例代码 div class cont
  • Java 8 Streams peek/map 不收集不提供输出

    下面的代码不打印任何值 没有打印任何 System out println 语句 我假设 peek 涉及修改数据 令人惊讶的是 peek 内部的逻辑甚至没有被执行 如果我使用收集器收集流 我会看到所需的行为 为什么至少 print 语句 1
  • 使用脚本在电子邮件中嵌入谷歌表单,就像使用电子邮件中包含表单选项时谷歌所做的那样

    我必须向一些人发送一份表格 我用谷歌脚本来完成 我尝试使用以下代码将表单嵌入到电子邮件中 https stackoverflow com a 23671529 4305236 https stackoverflow com a 236715
  • NodeJs 延迟 Promise.all() 中的每个 Promise

    我正在尝试更新不久前创建的一个使用nodejs的工具 我不是JS开发人员 所以我试图将代码拼凑在一起 但我陷入了最后一个障碍 新功能将采用 swagger json 定义 使用以下方法将端点与 AWS 服务上匹配的 API 网关进行比较 a
  • Oracle 相当于 SQL Server 包含要索引的列

    Oracle 是否允许我包含要索引的列 如 SQL ServerINCLUDE中的条款CREATE INDEX Thanks 不 Oracle 中的索引要么包含索引本身中的列 要么不包含 然而 根据您尝试解决的问题 索引组织表可能是 Ora
  • macOS Catalina - 无法打开“fse.node”,因为无法验证开发人员。在执行 npm run dev 或 watch 时

    在 macOS Catalina 10 15 3 上 我在运行时收到以下错误消息npm run dev or npm run watch 这似乎与nodejs但不知道如何解决它 fse node 无法打开 因为无法验证开发者 macOS 无
  • 如何在 GTK 中使用剪贴板?

    我怎样才能使用Gtk剪贴板 https developer gnome org gtk3 stable gtk3 Clipboards html 读取和写入剪贴板 作为示例 请向我展示如何获取当前剪贴板内容并将其打印到控制台 我尝试使用此方
  • 从 React Native 中的 api 拦截器(组件外部)重定向到屏幕

    我正在开发一个 React Native 应用程序 该应用程序使用 JWT 令牌对请求进行身份验证 为此 我创建了 axios 请求和响应拦截器 将令牌添加到每个请求 请求拦截器 并在响应具有 401 HTTP 状态 响应拦截器 时将用户重
  • chrome webdriver 将视口设置为低于 500px?

    在我基于 selenium 的测试中 我将窗口大小设置为 400 w 719 h 以创建 400x640 的内部视口大小 我的大多数测试都是基于该尺寸 尽管有些测试使用其他尺寸 Dimension size new Dimension 40
  • C++线程栈地址范围

    C 标准是否提供了关于线程堆栈的非重叠性质的保证 如由一个线程启动 std thread 特别是 是否可以保证线程在线程堆栈的进程地址空间中拥有自己的 独占的 分配的范围 标准中哪里描述了这一点 例如 std uintptr t foo a
  • 在运行时检测 C++ 堆碎片的可移植方法?

    我正在编写一个基于 qt 的 C 应用程序 我需要能够检测内存碎片 以便检查当前系统是否能够真正承受内存负载 程序加载一个大图像 15 21 兆像素是标准 在内存中 然后对其执行一些过滤 使用稀疏矩阵 例如 我在 Windows 中遇到内存
  • 在 Google App Engine 中使用 mapreduce 的简单反例

    我对 GAE 中 MapReduce 支持的当前状态有些困惑 根据文档http code google com p appengine mapreduce http code google com p appengine mapreduce
  • Python 将 Windows 文件路径转换为变量

    给定的是一个包含 Windows 文件路径的变量 然后我必须去阅读这个文件 这里的问题是路径包含转义字符 我似乎无法摆脱它 我检查了 os path 和 pathlib 但都期望正确的文本格式 但我似乎无法构建 例如这个 请注意 给出了 f
  • 如何使用配置和编程方式优雅地关闭 Spring Boot 应用程序?

    我想优雅地关闭我的 Spring Boot 应用程序 我想知道通过 application yaml 文件配置它和以编程方式配置它有什么区别 在我的应用程序 yaml 文件中 我已从参考中添加了此内容https www baeldung c
  • 用 NA 填充两个矩阵的缺失数据

    我有两个方阵 其中都有一些缺失的数据 我想在两个矩阵中用 NA 填充缺失的数据 数据如下 first matrix t1 matrix c 1 0 1 0 0 1 1 0 1 nrow 3 ncol 3 byrow TRUE rowname
  • 使用自定义键/值在 Mongoose/Handlebars 中创建 Schema 对象

    我想创建一个表单来输入 mongo mongoose 模式中对象的自定义键和值 最终在车把视图中看到 请参阅示例以更好地解释 任何帮助都会很棒 Mongoose Mongodb 架构 var docketSchema new Schema
  • 包含一个字符串且不包含另一字符串的行的正则表达式

    我有以下正则表达式可以方便地匹配包含以下内容的所有行console log or alert 在支持 PCRE 的编辑器中打开的任何 javascript 文件中都可以使用该函数 b console log alert b 但我遇到很多文件