【问题标题】:Notepad++ find and exclude a characterNotepad++ 查找和排除字符
【发布时间】:2014-10-02 00:16:15
【问题描述】:

我有一个 CSV 文件,其中包含如下行:

  • 选项,100,1; 3; 4; 2,,
  • Option,100,Interprete,,

我尝试了正则表达式 (^Option,.+,.+[^;].+,,) 来查找上面的行,但不包括 带有“;”的行第三个逗号分隔值中的字符。 我的正则表达式不起作用,不排除我不想找到的行。

【问题讨论】:

    标签: regex search replace find notepad++


    【解决方案1】:

    不要使用过于宽松的点,而是使用这样的否定字符类:

    (^Option,[^,]+,[^,;]+,,)
    

    [^,] 表示,以外的所有字符

    注意:括号可能没有用。

    【讨论】:

    • 谢谢Casimir,我更进一步,只是还有一件事,我怎样才能更具体的模式“1; 3; 4; 2”,“;”之前的数字会有所不同。我之所以问是因为我刚刚发现需要查找以下行:Option,100,Intérprete,,非常感谢,
    • @user3922473:您可以将[^,;]+ 替换为(?:[^,;]|(?<!\d);)+。另一种方法是跳过 html 实体:(?>[^,;&]+|&[^,;]+;|&)+
    猜你喜欢
    • 1970-01-01
    • 2020-09-21
    • 1970-01-01
    • 2020-10-07
    • 1970-01-01
    • 1970-01-01
    • 2017-01-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多