MatchRegEx() confronta la stringa di input con uno o più modelli di espressione regolare specificati e restituisce la posizione numerica dei modelli di espressione regolare corrispondenti. Se non vengono trovate corrispondenze, la funzione restituisce 0. Questa funzione cerca solo le corrispondenze esatte.
Questa funzione esegue operazioni regex che distinguono tra maiuscole e minuscole. In alternativa, è possibile utilizzare la variante MatchRegExI() per eseguire operazioni regex senza distinzione tra maiuscole e minuscole.
Sintassi:
MatchRegEx
(text, regex1 [ , regex2,...regexN])
Tipo di dati restituiti: numero intero
Argomenti
Argomento
Descrizione
text
Il testo della stringa di input a cui si desidera far corrispondere una o più espressioni regolari.
regex
L'espressione regolare che bisogna cercare di abbinare alla stringa di input. È possibile specificare più di un'espressione regolare in un'unica espressione, separata come argomenti successivi.
Restituisce 3. Il terzo modello regex è il primo che corrisponde ai dati.
MatchRegEx('ABC','[abc]+','[123]')
Restituisce 0, perché MatchRegEx() fa distinzione tra maiuscole e minuscole.
MatchRegExI('ABC','[abc]+','[123]')
Restituisce 1. Viene utilizzata la variante senza distinzione tra maiuscole e minuscole della funzione, MatchRegExI().
Casi d'uso
I casi d'uso di questa funzione includono:
Convalidare il testo per soddisfare gli standard di formattazione e di conformità e per identificare gli errori nei dati.
Identificare le differenze nel modo in cui il testo viene formattato. Ad esempio, è possibile identificare quanti numeri di telefono utilizzano il formato A, il formato B e così via.
Esempio 1 - script di caricamento per analizzare i formati dei numeri di telefono
Panoramica
Aprire l'editor caricamento dati e aggiungere lo script di caricamento sotto in una nuova scheda.
Lo script di caricamento contiene:
La tabella BusinessContactInfo contenente i numeri di telefono di contatto di varie aziende. I numeri di telefono seguono il sistema NANP (piano di numerazione nordamericano) e hanno 10 cifre.
Un campo calcolato, PhoneNumberFormat, per valutare se ogni numero di telefono corrisponde a uno di una serie specifica di formati di numeri di telefono.
Vi sono tre diversi formati che bisogna verificare: (###) ###-####, ###-###-#### e ##########.
Script di caricamento
BusinessContactInfo:
Load MatchRegEx(ContactInfo,'\({0,1}[0-9]{3}\) [0-9]{3}-[0-9]{4}', '[0-9]{3}-[0-9]{3}-[0-9]{4}', '[0-9]{10}') as PhoneNumberFormat,
* Inline `
ID CompanyName ContactInfo
1 Company A (123) 456-7890
2 Company B 0123456790
3 Company C 234-567-8901
4 Company D (024) 680-2456
5 Company E (135) 791-3579
6 Company F 8901234567
7 Company G 235-235-2352
8 Company H (555) (555) (5555)
9 Company I 2342342343
10 Company J 444-444-4444
` (delimiter is '\t');
Risultati
Caricare i dati e aprire un foglio. Creare una nuova tabella e aggiungere tali campi come dimensioni:
CompanyName
ContactInfo
PhoneNumberFormat
Tabella dei risultati
CompanyName
ContactInfo
PhoneNumberFormat
Company A
(123) 456-7890
1
Company B
0123456790
3
Company C
234-567-8901
2
Company D
(024) 680-2456
1
Company E
(135) 791-3579
1
Company F
8901234567
3
Company G
235-235-2352
2
Company H
(555) (555) (5555)
0
Company I
2342342343
3
Company J
444-444-4444
2
Da qui, ad esempio, è possibile creare dei KPI per calcolare il numero totale per il formato di ogni numero di telefono, nonché il numero di numeri di telefono che non hanno un formato riconosciuto:
Esempi di espressioni di aggregazione per contare le occorrenze di ogni formato
Esempio 2 - espressione del grafico per identificare il formato ISBN
Panoramica
Aprire l'editor caricamento dati e aggiungere lo script di caricamento sotto in una nuova scheda.
Lo script di caricamento contiene:
La tabella Books che elenca i codici ISBN di vari libri.
Da questi dati, bisogna identificare se ogni codice ISBN è un codice valido di 10 o 13 cifre, in base alla sintassi specificata in un modello regex.
Script di caricamento
Books:
Load * Inline [
Book
ISBN 123-3-1234-1234-0
ISBN 012-2-0123-0123-4
ISBN 000-1-0123-0123-2
ISBN 0-111-23456-7
ISBN 555-2-5555-5555-3
ISBN 222-4-2222-2222-2
ISBN 1-901-23456-8
ISBN 333-3-3333-3333-3
ISBN 555-1-5151-5151-3
ISBN 232-1-2323-2323-1
ISBN 2-444-44444-4
ISBN 888-0-9999-0000-0
];
Risultati
Caricare i dati e aprire un foglio. Creare una nuova tabella e aggiungere questo campo come dimensione:
Book
Aggiungere questa dimensione calcolata e assegnarle l'etichetta ISBN Format:
Se riscontri problemi con questa pagina o con il suo contenuto – un errore di battitura, un passaggio mancante o un errore tecnico – facci sapere come possiamo migliorare!