python 中的负正则表达式模式匹配
Negative Regex pattern matching in python
我将以下两行作为输出
1 ID_1 INSV enabled Activated 12.345.67.89
2 ID_2 SYSB Disabled Activated 12.345.67.89
我想匹配不应具有 SYSB 但应已激活的行。我正在写下面的正则表达式
ID_\d+\s+(?!SYSB)\s+\w+\s+Activated
它忽略了 SYSB 行,但它也没有捕获 INSV 行。如何解决这个正则表达式?
你可以像这样使用负前瞻:
^(?!.* SYSB ).* Activated\b
正则表达式详细信息:
^
: 开始
(?!.* SYSB )
:如果 " SYSB "
出现在行 的任何位置,则否定前瞻使匹配失败
.* Activated\b
:在 space 之后的行中的任意位置匹配单词 Activated
。 \b
用于单词边界。
我将以下两行作为输出
1 ID_1 INSV enabled Activated 12.345.67.89
2 ID_2 SYSB Disabled Activated 12.345.67.89
我想匹配不应具有 SYSB 但应已激活的行。我正在写下面的正则表达式
ID_\d+\s+(?!SYSB)\s+\w+\s+Activated
它忽略了 SYSB 行,但它也没有捕获 INSV 行。如何解决这个正则表达式?
你可以像这样使用负前瞻:
^(?!.* SYSB ).* Activated\b
正则表达式详细信息:
^
: 开始(?!.* SYSB )
:如果" SYSB "
出现在行 的任何位置,则否定前瞻使匹配失败
.* Activated\b
:在 space 之后的行中的任意位置匹配单词Activated
。\b
用于单词边界。