expressão regular para inverter a ordem de duas palavras desconhecidas separadas por uma vírgula

0

Estou tentando usar expressões regulares ReNamer para reverter nomes de pastas que usam nomes de autores. Eles estão configurados como LastName, FirstName e eu preciso alterá-los para FirstName LastName (menos a vírgula).

Em expressões regulares ReNamer, o uso é configurado como Expression em uma linha e Replace na segunda. Eu assumo neste caso Input e Output. Eu tentei várias soluções a partir daqui, mas não consegui nada para trabalhar. Eu mal entendo os fundamentos extremos do regex, então toda e qualquer ajuda é muito apreciada.

De acordo com o programa de renomeação de arquivos e pastas, ReNamer, regex é a única opção de várias opções que farão o que eu preciso. Eu tentei a sugestão de alguém de outro site. Na linha de expressão, digitei ([^,]*), (.) e, em Replace Line, digitei . O resultado mudou Duncan, Dave para 2 1 .

    
por Roger Parker 14.03.2015 / 15:17

1 resposta

3

Eu não sei ReNamer mas seguindo a lógica regex isso deve funcionar:

From: "^([^,]*), (.*)"
To  : " "

Explicação:

  • inicial ^ significa 'início da expressão'
  • os colchetes () indicam parte da expressão que deve ser lembrada e pode ser usada na substituição como e .
  • [^,]* corresponde todos os caracteres até, mas não incluindo, uma vírgula (o ^ neste contexto significa "não-correspondência")
  • .* corresponde a todos os caracteres restantes
  • a primeira expressão entre colchetes é LastName e a segunda expressão entre colchetes é FirstName
por 14.03.2015 / 16:07