Eu gostaria de substituir em muitos nomes de arquivos os vocais gregos maiúsculos por tonos, por aqueles sem eles:
Ά > Α
Έ > Ε
Ή > Η
Ί > Ι
Ό > Ο
Ύ > Υ
Ώ > Ω
Eu sei como substituí-los um por um, mas acho que RegEx é a melhor abordagem para substituir todos eles de uma vez. Alguém pode me ajudar com a sintaxe, por favor? Obrigado.
Não há como fazer isso com regex, como outros disseram - não é esse o propósito deles. Não vou entrar em detalhes porque foi bem explicado.
Se quiser usar este software, você pode usar o recurso Traduções de caracteres... disponível no menu suspenso Especial .
Basta adicionar alguns pares na janela, como:
etc., onde
=
é um separador de destino e substituição e cada entrada está em uma nova linha. Em seguida, marque a caixa de seleção Traduções de caracteres e execute-a em seus arquivos:Não há sintaxe para isso. Embora uma regex possa ser usada para corresponder a todas elas, ela não ajudará muito na substituição – isso por si só já está fora do que uma regex faz; não há sintaxe regex para especificar qual correspondência deve ser substituída. O programa que faz a correspondência de regex ainda precisa mapear "manualmente" cada correspondência para seu substituto.
Resumindo, depende da ferramenta de renomeação múltipla e não da regex.
Se isso fosse no Linux, eu usaria
perl-rename
(também conhecido comoprename
), pois é arbitrariamente programável, embora neste caso a opção mais simples de encadear várias substituições regulares resolveria o problema. (Perl também possui um operador de substituição de caracteresy///
que se parece com regex, mas não é.)Bem, se você não se importa em usar o PowerShell. Também está incluído no Windows, você pode usar algo assim: