Notepad++ voltear/reordenar líneas

Notepad++ voltear/reordenar líneas

Tengo muchas instancias del siguiente bloque de código, simplificado:

$image = '';
$name = '';
$link = '';
$role_suffix = '';
$role_name = '';
$notes = '';

Todas estas variables contienen datos diferentes. Necesito convertir mi archivo en una matriz, lo cual puedo hacer con una simple búsqueda y reemplazo, pero primero necesito cambiar $linkcon $image. Así:

$link = '';
$name = '';
$image = '';
$role_suffix = '';
$role_name = '';
$notes = '';

Seguramente debe haber una solución de expresiones regulares para guardar el cambio manual de todas ellas. Intenté piratear las respuestas encontradas en diferentes preguntas, ¡pero la expresión regular no tiene ningún sentido para mí! Jugué con esto (<div>.*?</div>)(\s+)(<span>.*?</span>)y lo reemplacé con \3\2\1pero no estoy seguro de la sintaxis correcta.

Respuesta1

  • Ctrl+H
  • Encontrar que:(\$image\h*=\h*.+?;)([\s\S]+?)(\$link\h*=\h*.+?;)
  • Reemplazar con:$3$2$1
  • comprobar Envolver alrededor
  • comprobar expresión regular
  • DESMARCAR. matches newline
  • Replace all

Explicación:

(               # start group 1
    \$image     # literally
    \h*         # 0 or more horizontal spaces
    =           # equal sign
    \h*         # 0 or more horizontal spaces
    .+?         # 1 or more any character but newline, not greedy
    ;           # semicolon
)               # end group 1
(               # start group 2
    [\s\S]+?    # 1 or more any character, not greedy
)               # end group 2
(               # start group 3
    \$link      # literally
    \h*         # 0 or more horizontal spaces
    =           # equal sign
    \h*         # 0 or more horizontal spaces
    .+?         # 1 or more any character but newline, not greedy
    ;           # semicolon
)               # end group 3

La captura de pantalla:

ingrese la descripción de la imagen aquí

información relacionada