正则表达式除了

regexp anything but

我有一个 65K 行的 txt 文件。并非所有都正确对齐。

所以我需要用 space

替换不以 ;Yes;No 结尾的行

尝试过

^{^;Yes|^;No}$

在正则表达式模式下尝试以下查找和替换:

查找:

^(?!.*(Yes|No);$).*$

替换:

(space)

Demo

此答案假设 UltraEdit 支持环视。如果不是,那么它将不起作用,我们将需要一种替代方法。

Select Perl 同时启用正则表达式。把这个放在 Find What:

(?m)^.*$(?<!;Yes|;No)

Replace with 输入字段中输入 space 个字符。

细分:

  • (?m) 启用多行标志
  • ^.*$匹配整行
  • (?<! 负面回顾开始
    • ;Yes 最后 4 个字符不应该是;是
    • |
    • ;No;否
  • ) 负面回顾结束

Live demo