Función OMIT( )

Devuelve una cadena con una o varias subcadenas especificadas eliminadas.

Sintaxis

OMIT(cadena1; cadena2 <;coincidir_mayúsc./minúsc.>)

Parámetros

Nombre Tipo Descripción
cadena1 carácter La cadena de donde se debe eliminar una o más subcadenas.
cadena2 carácter

Una o más subcadenas para eliminar.

  • Utilice punto y comas para separar varias subcadenas.
  • Use un espacio después del punto y coma solo si es parte de la subcadena que desea eliminar.
  • Si el carácter de comilla doble está presente en cualquiera de las subcadenas, encierre todo el parámetro cadena2 entre comillas simples (' ') en lugar de utilizar comillas dobles.
  • Para omitir un punto y coma, coloque un solo punto y coma al final de la lista de subcadenas, seguida inmediatamente por las comillas de cierre (consulte el último ejemplo más abajo).
coincidir_mayúsc./minúsc.

opcional

lógico

Especifique T para hacer que las subcadenas distingan entre mayúsculas de minúsculas o F para ignorar si es mayúscula o minúscula.

Si se omite coincidir_mayúsc./minúsc., se utiliza el valor predeterminado T.

Salida

Carácter.

Ejemplos

Ejemplos básicos

Valor de entrada de caracteres literales

Devuelve "Intercity Couriers":

OMIT("Intercity Couriers Corporation"; " Corporation, Corp.")

Devuelve "Inter-city Couriers":

OMIT("Inter-city Couriers Corp."; " Corporation, Corp.")

Nota

La distancia de Levenshtein entre los valores devueltos en los primeros dos ejemplos es 1. Si no se eliminan los elementos genéricos, la distancia entre los dos ejemplos es 8, lo cual podría permitir que los valores escapen a la detección como duplicados inexactos.

Valor de entrada del campo

Devuelve todos los valores del campo Nombre_proveedor con los elementos genéricos como "Corporation" e "Inc." eliminados:

OMIT(Nombre_proveedor;" Corporación, Corp., Corp, Inc., Inc. Ltd., Ltd")

Devuelve todos los valores del campo Nombre_proveedor con los elementos genéricos como "Corporation" e "Inc." eliminados:

OMIT(Nombre_proveedor;" ,.,Corporation,Corp,Inc,Ltd")

Nota

Los dos ejemplos anteriores devuelven los mismos resultados pero la sintaxis del segundo ejemplo es más eficiente.

Devuelve todos los valores del campo Nombre_proveedor con "Corporation" y "Corp" eliminados, y con todas las comas eliminadas:

OMIT(Nombre_proveedor;" Corporation, Corp,")

Observaciones

OMIT( ) puede eliminar las subcadenas como unidades

La función OMIT( ) elimina una o más subcadenas de una cadena. Difiere de las funciones como CLEAN( ), EXCLUDE( ), INCLUDE( ) y REMOVE( ) porque coincide y elimina caracteres por subcadenas en lugar de carácter por carácter. La eliminación de subcadenas que le permite quitar palabras específicas, abreviaturas o secuencias repetidas de caracteres de una cadena sin afectar el resto de la cadena.

Una función auxiliar para comparaciones de valores inexactos

OMIT( ) puede mejorar la efectividad de las funciones LEVDIST( ) o ISFUZZYDUP( ), o los comandos FUZZYDUP o FUZZYJOIN, quitando elementos genéricos como "Corporación" o "Inc." de los valores del campo. La eliminación de los elementos genéricos centra la comparación de cadenas realizada por estas funciones y comandos únicamente en la porción de las cadenas donde puede ocurrir una diferencia significativa.

De qué manera afecta los resultados el orden de las subcadenas

Si especifica varias subcadenas para su eliminación, el orden en que las enumera en cadena2 puede afectar los resultados de la salida.

Cuando se procesa la función OMIT( ), se elimina la primera subcadena de todos los valores que la contienen, luego se elimina la segunda subcadena de todos los valores que la contienen y así sucesivamente. Si una subcadena forma parte de otra subcadena (por ejemplo, "Corp" y "Corporación") la eliminación de la subcadena más corta primero también altera los valores que contienen la subcadena más larga ("Corporation" se convierte en "oration") y esto impide que se encuentre la subcadena más larga.

Para evitar esta situación, especifique las subcadenas más largas antes de cualquier subcadena más corta que contengan. Por ejemplo:

OMIT(Nombre_proveedor;" Corporation, Corp,")

Intente eliminar primero los caracteres especiales

Puede especificar subcadenas de carácter único, como signos de puntuación, caracteres especiales y un espacio en blanco, lo cual reduce aún más el material genérico en las cadenas. Puede ser más eficaz eliminar un carácter solo primero, como un punto o un espacio en blanco, lo cual reduce el número de variaciones en las subcadenas que posteriormente deberá especificar. Compare el tercer y cuarto ejemplo más atrás. Ambos devuelven los mismos resultados, pero el cuarto ejemplo es más eficiente.

Trabajo con los espacios o lugares en blanco

Los espacios en blanco o espacios en las subcadenas son tratados como cualquier otro carácter. Debe especificar explícitamente cada espacio en blanco que desea quitar como parte de una subcadena. Por ejemplo, si se especifica un signo & sin espacios en blanco ("&"), "Ricoh Sales & Service" se convierte en "Ricoh Sales  Service". Si incluye espacios en blanco (" & "), "Ricoh Sales & Service" se convierte en "Ricoh SalesService".

Si especifica un espacio en blanco que no forma parte de una subcadena, no se podrá encontrar la subcadena. Por ejemplo, si especifica un signo & con espacios en blanco (" & "), "Ricoh Sales&Service" permanece sin cambios.

Al utilizar punto y coma para separar varias subcadenas, debe colocar un espacio detrás del punto y coma únicamente si corresponde a la subcadena real que desea eliminar.

Un enfoque para hacer frente a los espacios en blanco es eliminar todos los espacios en blanco de un campo en primer lugar, mediante la especificación de un espacio en blanco como una subcadena de un solo carácter antes de especificar cualquier otra subcadena.

Revisión de los resultados que se obtienen con el uso de OMIT( )

Después de utilizar OMIT( ) para crear un campo calculado, revise el contenido del campo para confirmar que no ha omitido por error porciones significativas de cadenas. Por ejemplo, al omitirse "Co" se deshace de una abreviatura común para "Compañía", pero también elimina las letras "Co" de dos ubicaciones en "Coca-Cola".

Guía de creación de scripts de ACL 14.1