Notepad ++: Substitua o 10º caractere se o 4º-8º caractere contiver “B490” em um arquivo de texto

0

Eu preciso procurar "FE45" entre a posição 10-31 e, em seguida, substituir o caracter entre o 3º e o 6º para zzzz.

Arquivo de exemplo:

123AAA345FE45D
234BBB335DDFFFEEDFE45E
345CCC234ERFDF3FR06G

Meu desejo: -)

123000345FE45D
234000335DDFFFEEDFE45E
345000234ERFDF3FR06G

Como posso modificar essa expressão para obter os resultados acima?

Obrigado antecipadamente!

    
por supertech123 28.02.2018 / 21:59

2 respostas

2

  • Ctrl + H
  • Encontre o que: ^...\K...(?=.{0,27}FE45)
  • Substituir por: 000
  • marque o caso de correspondência
  • check Embrulhe
  • verificar expressão regular
  • NÃO VERIFIQUE . matches newline
  • Substituir todos

Explicação:

^           : beginning of line
...         : 3 any character but newline
\K          : forget what we have seen until this position
...         : 3 any character but newline
(?=         : lookahead, zero length assertion, make sure we have after this position
  .{0,27}   : 0 up to 27 any character but newline
  FE45      : literally FE45
)           : end lookahead

Resultado para o exemplo dado:

123000345FE45D
234000335DDFFFEEDFE45E
345CCC234ERFDF3FR06G
    
por 01.03.2018 / 11:41
1

Use () para criar grupos que você possa referenciar por ordem de aparição

Encontrar:

(b490)(.{2})(.{5})

Substituir:

ZZZZZ
    
por 28.02.2018 / 22:18

Tags