问题标签 [inverse-match]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
9 回答
327128 浏览

regex - 如何与正则表达式“反向匹配”?

我正在逐行处理一个文件,我想做一个反向匹配。例如,我想匹配有六个字母的字符串的行,但前提是这六个字母不是' Andrea '。我该怎么做?

我正在使用RegexBuddy,但仍然遇到问题。

0 投票
6 回答
7069 浏览

pdf - 从 Okular 中的 pdf 到 TexMaker 的 Latex 反向搜索

我正在使用带有 Okular 的 Karmic Ubuntu 的 TexMaker。我使用 pdfLatex 编译并在 Okular 中查看 PDF。如何配置 Okular 以使用 TexMaker 进行反向搜索?我尝试了以下代码:

texmaker %f -line %l

但它不起作用。我试过双击,ctrl+click,shift+click,ctrl+shift+click,ctrl+alt+click,alt+shift+click,还是没有。也许我根本不知道从 Okular 内部启动反向搜索的操作是什么。

如何配置 Okular 以使用 TexMaker 进行反向搜索?

0 投票
1 回答
1785 浏览

javascript - 如何将字符串限制为 JavaScript 中的特定字符集?

为了把它放在上下文中,请考虑以下两个函数:

第一个函数将输入限制为特定的字符集,第二个函数将省略输入中的任何字符或字符序列。正如您在第一个函数中的代码所见,它仅在将单个字符类传递给“正则表达式”参数时才会起作用,因为包含代码一次只检查一个字符。

考虑输入 string 12-34,现在如果我将正则表达式传递'[0-9]'给第一个函数和'[^0-9]'第二个函数,我将得到与预期相同的输出:1234

但是,如果我在第二个函数中使用更高级的表达式,例如'[^0-9][^0-9]-',我会得到12-. 但是如果我将多个字符类传递给第一个函数,它将返回一个空字符串。

我想知道是否有一种简单的方法(最好没有循环)来执行 ml_OmitChars 的逆操作,以便它们类似地工作?

0 投票
1 回答
1192 浏览

regex - 正则表达式匹配以字母结尾但不以 R 中的短语结尾的字符串

我需要使用grep来查找所有以以下字符向量结尾G但不以STIG或结尾的字符串:VÄG

我试过这个,但它返回 false 任何带有字母S, T, I, V,Ä在前面的字符串,而不是在前面是确切的短语G时返回 false 。G

谢谢!

我知道这篇文章

0 投票
2 回答
289 浏览

python - 与 Python 反向匹配

我一直在尝试使用 Python 2.7 中的两个列表。我已经完成了一部分,但花一些时间搜索并没有带来太多的结果。

List1:是我在 List2 中搜索的特定数字序列的列表。(例如)['209583', '185372', '684392', '995423']

List2:这些数字与 list1 不同。(例如)['209583_345829', '57185372', '853921864']

现在我可以匹配并拉出我在下面找到的东西......但我也在寻找相反的东西;List1为所有不在的数字设置一个变量List2

所以应该留在不匹配的变量中的是'995423'. 我已经尝试修改上面的代码,但我觉得它就在我的眼皮底下。

此外,出于性能原因仅使用 If/Else 语句是否有益?例如,如果匹配执行此操作,否则不匹配执行此操作...这样它只运行一次而不是两次。

这是一个简单的示例,但两者的列表每个可以推送超过 10,000 行。

谢谢!

0 投票
4 回答
489 浏览

python - Python 中的反向匹配帮助

您好,我正在寻找一个 McAfee 日志文件并删除所有“正常”和其他我不想看到的报告实例。之前我们使用了一个利用 grep 的 -v 选项的 shell 脚本,但现在我们正在寻找一个可以在 linux 和 windows 上运行的 python 脚本。经过几次尝试,我能够让一个正则表达式在一个在线正则表达式生成器中工作,但是我很难将它实现到我的脚本中。 在线正则表达式生成器

编辑:我想删除“正常”、“坏了”、“是块行”和“无法打开文件”行,所以我只剩下一个文件,里面有我遇到的问题有兴趣。在shell中有点像这样:

我在这里阅读并搜索文件:

我正在尝试搜索的文件示例:

但我没有得到正确的输出。我也尝试删除 MULTILINE 和 DOTALL 选项,但仍然没有得到正确的响应。下面是使用 DOTALL 和 MULTILINE 运行时的输出。

任何帮助将非常感激!!谢谢!!

0 投票
1 回答
32 浏览

bash - bash 4.1.2(2):如何在 for 循环中应用正则表达式逆匹配?

我只想遍历不包含字符串“unicredit”的目录。鉴于此目录列表(位于 中/tmp/scripts/bash/test/):

我推出了以下单线:

并期望以下输出:

但是却得到了这个错误:

我试图用引号来转义一些/所有括号,\并尝试用引号将正则表达式括起来,但这并没有解决问题。

为了获得我想要的输出,我应该做哪些修改?

谢谢你。

0 投票
1 回答
21 浏览

r - 将(且仅用于)已删除的反向重复项与未删除的反向原件的列值与 R 相加

我有一个包含犯罪实例的数据集,每个实例都有一个位置 (wardId)、犯罪类型 (Primary.Type) 和日期。最终目标是将其转变为以 Primary.Type 作为节点的网络,其边的权重取决于它们共享 Primary.Type 和 Ward.Date 的独特组合的次数(两种类型的犯罪发生在当天同一个病房是一个连接,这个组合当天发生的次数决定权重)。

在 Ward.Date 上合并后,wardId 和 Date我有一个包含 Ward.Date('wardId yyyy-mm-dd')、Primary.Type.x('string')、Primary.Type.y('string')的edgelist,重量(数字)。Primary.Types 源自合并重复表以创建边缘列表,因此存在反向重复。

病房日期 主要类型.x 主要类型.y 重量
1 2017-01-03 盗窃 抢劫 1
1 2017-01-03 抢劫 盗窃 1
2 2017-01-05 电池 入室盗窃 2
2 2017-01-05 入室盗窃 电池 2

在一些帮助下(使用 R 删除反向重复)我设法删除了 Primary.Type.x 和 Primary.Type.y 的反向重复值,它们具有相同的 Ward.Date 值:

但是需要注意的是,结果表也删除了反向对的权重,而此计数未汇总到保留的对的权重中:

病房日期 主要类型.x 主要类型.y 重量
1 2017-01-03 盗窃 抢劫 1
2 2017-01-05 入室盗窃 电池 2

相反,目标输出应该是:

病房日期 主要类型.x 主要类型.y 重量
1 2017-01-03 盗窃 抢劫 2
2 2017-01-05 入室盗窃 电池 4

期待看到您的建议!

0 投票
2 回答
51 浏览

python - 正则表达式反转选择

我环顾四周,但无法找到这个问题的答案。

我试图从字符串中选择所有内容,除了重复一定次数的空格。我找到了一个选择空格的正则表达式,我希望的是一种简单的方法来获得与此完全相反的结果,但我还没有找到一种方法来做到这一点。如果这很重要,我最终将在 python 中实现它。

下面是我的测试字符串、当前正则表达式以及我正在使用的正则表达式测试站点的链接。

当前的正则表达式

测试字符串:

正则表达式:

0 投票
1 回答
87 浏览

regex - 如何强制复赛?

我想在以下情况下强制重新匹配 - 我试图在列表中的每个元素之后反向匹配限定符。换句话说,我有:

并希望拥有:

作为输出。目前只有这样:

我认为如果有办法告诉正则表达式机器重新触发lastnegdecl正在捕获的新匹配项,这可能会起作用。