Riferimento a gruppi, caratteri speciali

Caratteri speciali usati per fare riferimento ai gruppi in un regex.

A cura di Totò Fiandaca  | issue #129 | guida/e Andrea Borruso


Introduzione

Le espressioni regolari si trovano in molti ambienti e software diversi, vediamo quanti modi esistono per fare il trova e sostituisci tramite l’uso dei gruppi, ovvero l’uso delle parentesi tonde.

Caso d’uso:

Supponiamo di avere un campo, di un file CSV, popolato con

/qgis/QGIS/pull/53256

dove varia solo il numero finale.

Per ottenere questo:

[53256](https://github.com/qgis/QGIS/pull/53256)

ho usato, in Visidata, questa stringa regex:

(.+\/)(.+)/[$2](https://github.com/qgis/QGIS/pull/$2)

ma non funziona perché sto usando il carattere generico $. Visidata è scritto in Python e quindi occorre usare il carattere speciale \ e quindi:

(.+\/)(.+)/[\2](https://github.com/qgis/QGIS/pull/\2)

Riassumendo

  • $ generico
  • \ python

Chi ha cucinato questa ricetta o ne ha tratto ispirazione

  • Blog Post su Pigrecoinfinito by Totò Fiandaca

Riferimenti utili

  1. Visidata
  2. Regex101
Ultima modifica 19/07/2020: close #50 (a1365d8)