MatchRegEx() compara la cadena de entrada con uno o varios patrones de expresión regular especificados y devuelve la ubicación numérica de los patrones de expresión regular que coinciden. Si no se encuentra ninguna coincidencia, la función devuelve 0. Esta función sólo busca coincidencias exactas.
Esta función realiza operaciones regex que distinguen entre mayúsculas y minúsculas. Puede utilizar alternativamente la variante MatchRegExI() para realizar operaciones regex sin distinguir mayúsculas de minúsculas.
Sintaxis:
MatchRegEx
(text, regex1 [ , regex2,...regexN])
Tipo de datos que devuelve: Entero
Argumentos
Argumento
Descripción
text
El texto de la cadena de entrada con el que desea hacer coincidir una o varias expresiones regulares.
regex
La expresión regular que se intentará hacer coincidir con la cadena de entrada. Puede especificar más de una expresión regular en una única expresión, separadas como argumentos sucesivos.
Devuelve 3. El tercer patrón regex es el primero que coincide con los datos.
MatchRegEx('ABC','[abc]+','[123]')
Devuelve 0, porque MatchRegEx() distingue entre mayúsculas y minúsculas.
MatchRegExI('ABC','[abc]+','[123]')
Devuelve 1. Se utiliza la variante de la función que no distingue entre mayúsculas y minúsculas, MatchRegExI().
Cuándo se utiliza
Los casos de uso de esta función incluyen:
Validar el texto para cumplir las normas de formato y conformidad, e identificar errores en los datos.
Identificar las diferencias en el formato del texto. Por ejemplo, puede identificar cuántos números de teléfono utilizan el formato A, el formato B, etc.
Ejemplo 1: script de carga para analizar los formatos de los números de teléfono
Descripción
Abra el editor de carga de datos y agregue el script de carga a continuación a una nueva pestaña.
El script de carga contiene:
Una tabla BusinessContactInfo que contiene los números de teléfono de contacto de varias empresas. Los números de teléfono son números de teléfono NANP de 10 dígitos.
Un campo calculado, PhoneNumberFormat, para evaluar si cada número de teléfono coincide con uno de un conjunto específico de formatos de número de teléfono.
Hay tres formatos diferentes que queremos comprobar: (###) ###-####, ###-##-####, y ##########.
Script de carga
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');
Resultados
Cargue los datos y abra una hoja. Cree una nueva tabla y agregue estos campos como dimensiones:
CompanyName
ContactInfo
PhoneNumberFormat
Tabla de resultados
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
A partir de aquí, por ejemplo, podría crear unos KPI para calcular el recuento total de cada formato de número de teléfono, así como la cantidad de números de teléfono que no tienen un formato reconocido:
Ejemplos de expresiones de agregación para contar las instancias de cada formato
Ejemplo 2: expresión de gráfico para identificar el formato ISBN
Descripción
Abra el editor de carga de datos y agregue el script de carga a continuación a una nueva pestaña.
El script de carga contiene:
Una tabla Books que muestra los códigos ISBN de varios libros.
A partir de estos datos, queremos identificar si cada código ISBN es un código válido de 10 o 13 dígitos, basándonos en la sintaxis especificada en un patrón regex.
Script de carga
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
];
Resultados
Cargue los datos y abra una hoja. Cree una nueva tabla y agregue este campo como dimensión:
Book
Añada esta dimensión calculada y asígnele la etiqueta ISBN Format:
No dude en indicarnos en qué podemos mejorar si encuentra algún problema en esta página o su contenido, como, por ejemplo, errores tipográficos, pasos que falta o errores técnicos.