使用管道' |'删除Notepad ++中的列。分隔符

时间:2014-10-30 18:59:58

标签: replace notepad++

我的文件格式为:

Line 1467|XXXXX| YYYYY
Line 146137|XXXXX| YYYYY
Line 14617|XXXXX| YYYYY
Line 149367|XXXXX| YYYYY
Line 15467|XXXXX| YYYYY
Line 1467|XXXXX| YYYYY
Line 14267|XXXXX| YYYYY

我需要删除第一列,所以我只需要:

XXXXX| YYYYY

我可以使用哪些替换选项和正则表达式来删除第一列?

P.S:Line<<文本

1 个答案:

答案 0 :(得分:2)

  1. 打开“替换”对话框( Ctrl + H
  2. 查找内容:^[^|]+\|([^\r\n]+)
  3. 中输入此内容
  4. 替换为:\1
  5. 中输入此内容
  6. 单击正则表达式单选按钮
  7. 点击全部替换按钮
  8. 但是,请注意不要多次点击“全部替换”,因为第二列将成为第一列。

    查找内容:框中,

    • 第一个^指示它从行的开头
    • 开始
    • 方括号[ ]指示它查找一组字符
      • 方括号内的插入符号^指示其在集合中查找中的任何字符
      • 所以当谈到管道char |时,它会查找任何不是管道字符的字符
      • 加号+查找方括号找到的一个或多个匹配项
    • 由于管道字符|在正则表达式中具有特殊含义,我们必须在其前面加上反斜杠\
    • 括号( )分组并保存。因此,我们将保存括号中找到的任何字符
      • 方括号[ ]指示它查找一组字符
      • 方括号内的插入符号^指示其在集合中查找中的任何字符
      • 回车\r和换行符\n结束一行,所以查找任何不结束该行的字符
      • 加号+查找方括号找到的一个或多个匹配项

    所以它会查找管道+管道char的任何内容,但它只会在第一个管道之后的行的其余部分保存任何字符。

    替换为:字段中:

    • 反斜杠\后跟数字1表示第一组括号中保存的内容