Skip to main content
I dati grezzi estratti raramente sono abbastanza puliti da poter essere usati direttamente. Dopo che i selettori hanno individuato i valori desiderati, le stringhe prelevate dalla pagina spesso contengono elementi superflui. Il prezzo di un prodotto può includere simboli di valuta, spazi e testo finale. Un numero di telefono può comparire in tre formati diversi nello stesso sito. Le date possono essere scritte come “May 15, 2026” in un punto e “2026-05-15” in un altro. Le espressioni regolari, o regex, sono lo strumento standard per pulire, estrarre e riformattare questo tipo di testo disordinato in campi strutturati e coerenti. Le regex definiscono un modello che descrive la forma del testo desiderato. Il motore analizza una stringa, trova le corrispondenze e consente di estrarle o sostituirle. Non è necessario padroneggiare ogni caso limite della sintassi regex per trarne un vantaggio concreto: pochi modelli comuni coprono la grande maggioranza delle operazioni di pulizia necessarie nello scraping.

Modelli comuni per la pulizia

Una piccola raccolta di modelli riutilizzabili gestisce la maggior parte dei casi reali:
  • Prezzi. [\d,.]+ acquisisce valori numerici con virgole e punti decimali, rimuovendo simboli di valuta e testo circostante. La versione più precisa (\d{1,3}(?:,\d{3})*(?:\.\d{2})?) riconosce formati standard come 1,299.99.
  • Numeri di telefono. \(?\d{3}\)?[-.\s]?\d{3}[-.\s]?\d{4} gestisce i comuni formati statunitensi, con o senza parentesi e con gruppi separati da trattini, punti o spazi.
  • Email. [\w.+-]+@[\w-]+\.[\w.]+ riconosce la maggior parte degli indirizzi email standard, uno degli impieghi più noti delle regex.
  • Date. \d{4}-\d{2}-\d{2} riconosce il formato ISO; \w+ \d{1,2}, \d{4} gestisce stringhe nello stile May 15, 2026.
  • Rimozione dei tag HTML. <[^>]+> rimuove i tag da una stringa.
  • Normalizzazione degli spazi. \s+ riduce le sequenze di spazi a un solo spazio.

Consigli pratici

  • Esegui test su campioni reali. Le pagine vere presentano particolarità assenti negli esempi ideali. Prova il modello sull’output del sito di destinazione prima di considerarlo affidabile.
  • Usa quantificatori non avidi (*?, +?). Quando il motore può scegliere tra una corrispondenza breve e una lunga, * e + selezionano per impostazione predefinita quella più lunga. Spesso non è ciò che serve.
  • Usa i gruppi di acquisizione. Le parentesi () permettono di estrarre solo la parte che interessa da una corrispondenza più ampia: sono utili quando occorre riconoscere il contesto attorno al dato, ma conservare soltanto il dato stesso.
  • Fai attenzione ai casi limite locali. Una regex per prezzi basata sul formato statunitense (1,299.99) funzionerà male con i numeri europei (1.299,99), nei quali virgola e punto si scambiano di ruolo. Lo stesso vale per date, numeri di telefono e notazioni decimali.

L’approccio di Octoparse

Le regex hanno la meritata reputazione di essere difficili da scrivere e ancora più difficili da leggere. Un modello complesso può sembrare un insieme incomprensibile di simboli e un piccolo errore può riconoscere silenziosamente dati sbagliati o ignorare voci valide. L’errore non provoca un arresto: genera dati danneggiati che vengono scoperti soltanto a valle, a volte molto tempo dopo. Octoparse integra il supporto alle regex direttamente nel flusso di estrazione: gli utenti possono applicare trasformazioni regex a qualsiasi campo estratto come fase di post-elaborazione, pulendo e riformattando i dati prima dell’esportazione senza scrivere script separati. Il modello, il campo al quale si applica e l’output pulito fanno tutti parte della stessa definizione dell’attività. Per chi non si sente a proprio agio nello scrivere regex da zero, Octoparse offre anche la generazione di regex assistita dall’AI: evidenziando elementi simili nella pagina, l’AI analizza gli schemi degli esempi e genera automaticamente una regex corrispondente. Il modello può quindi essere provato sui dati effettivamente estratti all’interno della piattaforma: è possibile vedere che cosa riconosce e modificarlo se necessario. L’AI gestisce la sintassi; l’utente convalida il risultato. Questo approccio risolve i due costi reali delle regex in un flusso di scraping: scrivere i modelli partendo da zero e verificare che producano il risultato previsto sui dati reali. Entrambe le attività vengono assorbite dall’editor visuale invece di rimanere operazioni tecniche separate.

In sintesi

Per la maggior parte dei progetti di scraping non servono regex molto complesse. Una piccola raccolta di modelli riutilizzabili per prezzi, email, date, numeri di telefono e pulizia degli spazi copre gran parte delle esigenze. Mantieni i modelli più semplici possibile senza comprometterne l’accuratezza, documentali se prevedi di gestire lo scraper a lungo termine e affidati alla generazione tramite AI quando la sintassi diventa poco maneggevole. L’obiettivo è ottenere un output pulito e coerente: le regex sono il mezzo, non il fine.