La función REGEXP_REPLACE devuelve una copia de la cadena de texto que recibe como primer argumento tras sustituir aquellos caracteres que satisfagan la expresión regular indicada por otra cadena de texto.
REGEXP_REPLACE(
texto,
patrón,
reemplazo
)
- texto: cadena de texto en la que buscar los caracteres que satisfagan el patrón indicado para sustituirlos por la cadena de reemplazo
- patrón: patrón a buscar
- reemplazo: cadena de texto por la que sustituir aquellos caracteres de texto que satisfagan el patrón.
La función REGEXP_REPLACE devuelve una cadena de texto.
Esta función está disponible para:
- Ficheros de texto
- Hadoop Hive
- Google BigQuery
- PostgreSQL
- Tableau Data Extract
- Microsoft Excel
- Salesforce
- Vertica
- Pivotal Greenplum
- Teradata (versión 14.1 y posteriores)
- Snowflake
- Fuentes de datos Oracle
Trabajando en Tableau Prep Builder cargamos la tabla Geography con información sobre los lugares en los que se realizan las ventas (país, región y ciudad), y seleccionamos apenas el campo Country:
Ahora, supongamos que deseamos reemplazar la cadena "Spain" por "España". Para ello hacemos clic en los tres puntos que se muestra en la tarjeta del campo (cerca de la esquina superior derecha de la imagen anterior) y, a continuación, otro clic en Crear campo calculado...
En la ventana que se abre a continuación (ventana "Añadir campo") damos un nombre al nuevo campo (si es el mismo nombre que el campo en el que estamos trabajando simplemente se sobrescribirá el resultado) y escribimos el siguiente código:
REGEXP_REPLACE([Country], "Spain", "España")
Con este código estamos reemplazando las cadenas "Spain" por "España". Si hacemos clic en el botón Guardar vemos el resultado:
También podemos reemplazar fragmentos de cadenas de texto. Por ejemplo, a partir del resultado anterior, supongamos que deseamos sustituir las letras "a" por su equivalente mayúscula "A". Volvemos a hacer clic en los tres puntos de la tarjeta del campo que abre las opciones disponibles y hacemos otro clic -nuevamente- en Crear campo calculado...
De forma semejante al ejemplo anterior, damos nombre al campo y escribimos el siguiente código:
REGEXP_REPLACE([Country], "a", "A")
Si ahora hacemos clic en el botón Guardar, vemos el resultado:
Si seguimos trabajando con la misma tabla Geography, seleccionamos solo el campo City:
Deseamos esta vez reemplazar aquellas letras "c" que estén seguidas de las vocales "a" o "e" por "_" (es decir, queremos reemplazar las apariciones de "ca" y "ce" por "_"). Para ello abrimos el menú de opciones de la tarjeta del campo y seleccionamos Crear campo calculado...
En la ventana Añadir campo que se abre damos nombre al nuevo campo y escribimos el siguiente código:
REGEXP_REPLACE([City], "c[ae]", "_")
Si hacemos clic en el botón Guardar vemos el resultado: