Estoy intentando utilizar expresiones regulares de ReNamer para invertir los nombres de carpetas que utilizan nombres de autor. Están configurados como LastName, FirstName
y necesito cambiarlos a FirstName LastName
(menos la coma).
En ReNamer, el uso de expresiones regulares se configura como Expresión en una línea y Reemplazar en la segunda. Supongo que en este caso Entrada y luego Salida. Probé varias soluciones desde aquí pero no pude hacer que nada funcionara. Apenas entiendo los conceptos básicos extremos de las expresiones regulares, por lo que toda ayuda es muy apreciada.
Según el programa de cambio de nombre de archivos y carpetas, ReNamer, la expresión regular es la única opción entre varias que hará lo que necesito. Probé la sugerencia de alguien de otro sitio. En la Línea de expresión escribí ([^,]*), (.)
y luego en la Línea de reemplazo escribí \2 \1
. El resultado cambió Duncan, Dave
a 2 1
.
Respuesta1
No conozco ReNamer pero siguiendo la lógica de expresiones regulares esto debería funcionar:
From: "^([^,]*), (.*)"
To : "\2 \1"
Explicación:
- inicial
^
significa 'inicio de la expresión' - los
()
corchetes indican parte de la expresión que debe recordarse y puede usarse en el reemplazo como\1
y\2
. [^,]*
coincide con todos los caracteres hasta la coma, pero sin incluirla (^
en este contexto significa "no coincidente").*
coincide con todos los caracteres restantes- la primera expresión entre corchetes es tu
LastName
y la segunda expresión entre corchetes es tuFirstName
Respuesta2
Usted debe hacer esto:
:%s/\(^.*\,*\).*\(\,.*$\)/\2 \1/g
Recuerde que para algunos caracteres de puntuación es necesario agregarlos \
antes en VI/VIM.
Producción:
, Nombre Apellido