Às vezes, eu usei o wReplace from sharktime.com . Isso funciona muito bem. Você pode instalá-lo e, em seguida, pode indicar quantos caracteres você deseja alterar.
Eu sei que não é uma solução de estilo plugin , mas funciona. Espero que isso ajude!
Como localizar e substituir no Notepad ++ vários caracteres diferentes para as letras correspondentes de uma só vez ao longo do texto? Por exemplo, tenho 32 caracteres que quero substituir. Então eu tenho o caractere “À” e quero substituí-lo pela letra “A”. Em seguida, tenho o caractere “Æ” e quero substituí-lo pela letra “Ж” e assim por diante. Geralmente, tenho 32 caracteres e cada vez preciso fazer a mesma operação. Existe alguma maneira de fazer isso de uma vez?
Às vezes, eu usei o wReplace from sharktime.com . Isso funciona muito bem. Você pode instalá-lo e, em seguida, pode indicar quantos caracteres você deseja alterar.
Eu sei que não é uma solução de estilo plugin , mas funciona. Espero que isso ajude!
Mesmo com o novo mecanismo RegEx do Notepad ++ 6 que suporta PCRE ( fonte ), há nenhuma abordagem sã (ou seja, com complexidade linear) e confiável (ou seja, garantida para funcionar) que permitirá que você alcance isso em um único Find & Substitua , e muito menos um único Localizar nos arquivos .
Você pode , no entanto, conseguir isso usando Localizar em arquivos duas vezes:
Adicione uma matriz de substituição a cada ocorrência de qualquer um dos caracteres antigos:
Find what: ([ÌÍÎÏÐÑ])
Replace with: '''ÌH'ÍO'ÎΠ'ÏP'ÐC'ÑT''
Search Mode: Regular Expression
Isso transforma fooÌbar
em foo''Ì'ÌH'ÍO'ÎΠ'ÏP'ÐC'ÑT''bar
, por exemplo.
Substitua cada caractere antigo (e a matriz de substituição ) pelo novo caractere correspondente:
Find what: ''(.).*?'(.).*?''
Replace with:
Search Mode: Regular Expression
Isso transforma foo''Ì'ÌH'ÍO'ÎΠ'ÏP'ÐC'ÑT''bar
em H
, por exemplo.
Note que você precisa atualizar para o Notepad ++ 6.0 ou superior para isso. Embora a expressão regular em si também deva funcionar com o antigo mecanismo RegEx, há um bug que atrapalha os caracteres multibyte em geral.
O conjunto de caracteres ([ÌÍÎÏÐÑ])
corresponde a qualquer um desses cinco caracteres.
Os parênteses transformam isso na primeira subexpressão (veja o próximo item).
simboliza a correspondência da primeira subexpressão, ou seja, o caractere que queremos substituir.
Todos os outros caracteres são tratados literalmente.
A escolha de '
como o delimitador é arbitrária. Você pode usar qualquer outro caractere que quiser.
(.)
corresponde ao primeiro caractere após ''
.
Os parênteses transformam isso na primeira subexpressão.
.*?
corresponde ao menor número de caracteres possível.
'
simboliza '
seguido pela correspondência da primeira subexpressão, ou seja, o caractere que queremos substituir.
(.)
corresponde ao primeiro caractere após o caractere que queremos substituir. Pelo nosso design, esse é seu personagem substituto.
Os parênteses transformam isso na segunda subexpressão.
.*?''
corresponde ao menor número de caracteres possível até que o ''
final seja encontrado.
Para mais informações sobre expressões regulares, consulte:
Tags notepad++