首页 > 解决方案 > 匹配除正则表达式之外的所有内容

问题描述

已经搜索了很长时间,阅读了有关负面/正面前景的信息,但除了我的正则表达式之外,它无法匹配所有内容。

\b[AZ]{1}\d{3,6}[A-Z0-9]+

是我不想提取的字符串。

(?!\b[AZ]{1}\d{3,6}[A-Z0-9]+).*

是我使用 Negative Outlook 的最佳尝试,但它仍然会匹配数据。


我正在使用这个正则表达式:

11/02/2019 1 475.50 453.345 序列号:C580A0453WD7996 AFJ_LowGuard_NewNew 最终用户详细信息:


我想要的输出是:

11/02/2019 1 475.50 453.345 序列号:AFJ_LowGuard_NewNew 最终用户详细信息:

标签: regex

解决方案


您可以使用正则表达式匹配并用空字符串替换匹配项,这是一种方法。

您似乎正在尝试的另一种方法是,您可以使用以下正则表达式来匹配除您的正则表达式之外的任何内容,

\b(?:(?![A-Z]\d{3,6}[A-Z0-9]+).)+\b

演示

这将匹配除您的模式之外的任何内容。但我个人建议通过匹配您的模式进行替换应该很容易。

编辑:

好的,我阅读了您的评论,您希望替换除与您的模式匹配的字符串之外的任何内容。在这种情况下,您可以使用以下正则表达式来匹配除您的模式之外的所有内容并将其替换为空字符串以获得您的结果,

\b(?:(?![A-Z]\d{3,6}[A-Z0-9]+).)+

用空字符串替换的演示


推荐阅读