2017-04-11 36 views
1

我在這裏有一些ASCII文件,我想以日期爲前綴,但只有那些不以「DA」或「DE」開頭的行。與NPP匹配的詞,NOT字符

DEPARTAMENTO DE FILOSOFIA 
DATA LOCAL HORÁRIO DISCIPLINA TURMA PROF(A) OCORRÊNCIA ASSISTENTE 
LAB-02 20:20-21:10 INF007 ? GRINALDO AD FERREIRA 
DEPARTAMENTO DE HISTÓRIA 
DATA LOCAL HORÁRIO DISCIPLINA TURMA PROF(A) OCORRÊNCIA ASSISTENTE 
D-202 15:20-17:00 HISTORIA 2831 MICHELE AD AILTON 
DEPARTAMENTO DE LINGUAS ESTRANGEIRAS 
DATA LOCAL HORÁRIO DISCIPLINA TURMA PROF(A) OCORRÊNCIA ASSISTENTE 
D-106 18:40-20:20 INGLES 13752 DEISE FT+AD AILTON 

我使用搜索&取代,這 「^([^ AE]。*)$」,由 「2017年1月1日\ t \ 1」(被通過任何啓動任何線由A folowed或直到EOL並替換爲DATE製表符LINE)。它產生:

DEPARTAMENTO DE FILOSOFIA 
DATA LOCAL HORÁRIO DISCIPLINA TURMA PROF(A) OCORRÊNCIA ASSISTENTE 
LAB-02 20:20-21:10 INF007 ? GRINALDO AD FERREIRA 
DEPARTAMENTO DE HISTÓRIA 
DATA LOCAL HORÁRIO DISCIPLINA TURMA PROF(A) OCORRÊNCIA ASSISTENTE 
01/01/2017 D-202 15:20-17:00 HISTORIA 2831 MICHELE AD AILTON 
DEPARTAMENTO DE LINGUAS ESTRANGEIRAS 
DATA LOCAL HORÁRIO DISCIPLINA TURMA PROF(A) OCORRÊNCIA ASSISTENTE 
01/01/2017 D-106 18:40-20:20 INGLES 13752 DEISE FT+AD AILTON 

但是不捕獲「LAB。*」。我怎麼能這樣做,所以它真的捕獲行不是由「DE」或「DA」開始,而是爲「D-」開始?

回答

0

^(.[^AE].*)$正則表達式匹配以比斷行字符以外的任何字符開頭的行,然後有任何字符(甚至是一行!)以外AE,然後可能比斷行字符以外的任何字符0+ 。

使用下面的表達式:

查找內容:01/01/2017\t$0

詳細^(?!D[AE]).*
替換爲

  • ^ - 一行的開始...
  • (?!D[AE]) -後面沒有,然後AE
  • .* - 匹配替換模式中引用$0反向引用的所有行的其餘部分。

enter image description here

+1

尼斯,它的工作原理。謝謝。 –