Per lavoro devo utilizzare un software GIS proprietario per fare delle elaborazioni geospaziali e non; è un software molto vecchio con documentazione ben fatta, ma su alcuni argomenti (per esempio come usare le regex) ho trovato pochissimo quindi come risolvo il mio problema?
Il problema che devo risolvere è il seguente:
Ho una tabella degli attributi, come sotto:
e devo popolare l’attributo (l’ultimo nella tabella) CLASS solo con la parte iniziale dei valori presenti nei due attributi ClassREF e ClassID, cioè, devo eliminare la parte numerica:
da MU_DIV_L_384604 a MU_DIV_L
In QGIS (che conosco bene) è molto semplice e immediato, basta utilizzare il Field Calc (il linguaggio è un misto tra Python, SQL ecc… ma nulla di complicato), ma come fare in un software che utilizza Python nel Field Calc? Occorre conosce prima Python e poi la sintassi utilizzata nel software.
Mentre cercavo una indicazione nel web, una vocina mi sussurrava (era Andrea Borruso) “formula una domanda al mio bot“, quindi scrivo:

risposta:
Puoi utilizzare il Field Calculator di ArcMap per estrarre il valore “EL_DIV” dal campo che contiene la stringa “EL_DIV_68” utilizzando le espressioni regolari (regex). Ecco i passaggi da seguire:
la risposta è lunga e ben articolata, metto il link: https://poe.com/s/naSHkaqzFRoRx8cgbqMM
ovvero, quello sotto:

Soluzione perfetta (non banale e complicata): il BOT scrive la soluzione in italiano; la descrive bene; la suddivide in step; spiega anche il pattern della regex utilizzata, FANTASTICO!!!
Ma non finisce qui, a me interessava concatenare i risultati di due regex, una per ogni colonna (ClasREF e ClassID) e quindi continuo a chiedere al BOT: “è possibile concatenare i risultati di due regex?” (è importante scrivere subito dopo la prima domanda, perché il BOT ragiona anche rispetto le altre domande poste prima)
risposta: metto il link perché la risposta è ben articolata e lunga: https://poe.com/s/8uGGSYcJfsQxcHfLUn9c
Che dire, sono rimasto piacevolemente colpito, non mi aspettavo una soluzione cosi ben articolata e soprattutto cucina al mio caso d’uso: in realtà parte del merito è anche mia, in quanto ho saputo scrivere la domanda.
NOTE FINALI: Come dice sempre Andrea Borruso:
Sotto il bot realizzato e personalizzato da Andra Borruso:
https://poe.com/aRigaDiComando
RINGRAZIAMENTI
- Andrea Borruso: https://twitter.com/aborruso
- Poe: https://poe.com/
RIFERIMENTI
- BOT aRigaDiComando: https://poe.com/aRigaDiComando