< All
...
Export

14 Ricerca e sostituzione

Per sostituire in modo specifico i dati in un campo di attributi, può utilizzare la funzione regexp_replace() nel calcolatore di campi di QGIS. Questa funzione le consente di cercare modelli di testo all’interno di un campo e di sostituirli con un nuovo testo. Si possono utilizzare sia termini semplici che espressioni regolari per eseguire sostituzioni complesse.

Sintassi:

regexp_replace("Feldname", 'Suchmuster', 'Ersatztext')
  • Nome del campo": il campo dell’attributo in cui deve essere effettuata la sostituzione.
  • Modello di ricerca': il termine o il modello di testo che desidera sostituire. Può essere un semplice testo o un’espressione regolare.
  • Testo sostitutivo': il testo che deve sostituire il termine o il modello trovato.

Esempio:

Se desidera sostituire il termine Term1 con Term2 in un campo attributo chiamato “Nome del campo”, l’espressione è la seguente:

regexp_replace("Feldname", 'Begriff1', 'Begriff2')

In questo esempio, la funzione cerca le occorrenze del termine1 in ogni record di dati del campo “Nome del campo” e le sostituisce con il termine2.

Esempio di applicazione:

Supponiamo che il campo attributo “Nome del campo” contenga un elenco di specie arboree e che lei voglia sostituire tutte le occorrenze del termine “quercia” con “faggio”. L’espressione nella calcolatrice di campo sarà quindi simile a questa:

regexp_replace("Feldname", 'Eiche', 'Buche')

Dopo l’esecuzione, tutte le voci contenenti il termine “quercia” vengono automaticamente sostituite da “faggio”.

Vantaggi di regexp_replace():

  1. Flessibilità: oltre ai termini semplici, è possibile definire anche modelli di testo complessi utilizzando espressioni regolari per catturare modelli specifici o ricorrenti.
  2. Precisione: utilizzando le espressioni regolari, può assicurarsi che vengano sostituite solo le occorrenze desiderate.
  3. Automazione: la funzione può essere utilizzata per tutti i record di dati in un campo di attributi contemporaneamente, rendendo superflue le regolazioni manuali.

Nota:

Se desidera sostituire solo termini semplici senza utilizzare le espressioni regolari, può anche utilizzare la funzione replace(), che è più semplice in questi casi. L’espressione sarà quindi simile a questa:

replace("Feldname", 'Begriff1', 'Begriff2')

Tuttavia, la funzione regexp_replace() offre più opzioni, in quanto riconosce e modifica modelli e strutture di testo complesse.