Na marca da janela de substituição Expressão regular e
Encontre o que: (OU..._.._)(Z0.._.)
Substitua por: X
Eu tenho uma quantidade enorme de linhas contendo este, por exemplo, este texto: OU111_DI_Z006_1
Observe que alguns caracteres são diferentes em todas as linhas, representados por @. Assim: OU @@@ _ @@ _ Z0 @@ __ @
Como posso usar a função de substituição de pesquisa para adicionar o caractere X antes de Z?
Assim: OU111_DI_XZ006_1
Na marca da janela de substituição Expressão regular e
Encontre o que: (OU..._.._)(Z0.._.)
Substitua por: X
Isso depende dos seus dados. Os caracteres "OU" e "Z0" são exclusivos para mostrar o início de cada substring ... ou podem aparecer aleatoriamente (por exemplo, OU222_Z0_Z055 ..)?
Se eles são únicos e possivelmente não podem aparecer em qualquer lugar, exceto como o início de cada substring, então um regex simples pode funcionar muito genericamente:
Find: (OU.*)(Z0.*)
Replace: X
Aqui, você está agrupando tudo (. *) que começa com OU como "\ 1". E agrupando tudo iniciando Z0 como "\ 2". (Os parênteses criam os grupos.)
A string de substituição é apenas colocar um X entre os grupos 1 e 2.
NOTA: isso é muito semelhante à resposta de marbel82, exceto que isso é mais genérico, porque você não está especificando quantos sublinhados e caracteres devem existir.
..
Se, no entanto, essa OU e Z0 não forem marcadores exclusivos, você precisará entender melhor seus dados para criar um regex genérico para suas características.
Tags notepad++