Compartir a través de


SEARCH

Se aplica a:columna Calculadatabla calculadaMedidacálculo visual

Devuelve el número del carácter en el que se encuentra por primera vez un carácter específico o una cadena de texto, leyendo de izquierda a derecha. La búsqueda no distingue mayúsculas de minúsculas y distingue acentos.

Sintaxis

SEARCH(<find_text>, <within_text>[, [<start_num>][, <NotFoundValue>]])

Parámetros

Término Definición
find_text Texto que desea encontrar.

Puede usar caracteres comodín (?) y asterisco (*) en find_text. Un signo de interrogación coincide con cualquier carácter individual; un asterisco coincide con cualquier secuencia de caracteres. Si desea encontrar un signo de interrogación o asterisco real, escriba una tilde (~) antes del carácter.
within_text Texto en el que desea buscar find_texto una columna que contenga texto.
start_num (opcional) Posición del carácter en within_text en la que desea empezar a buscar. Si se omite, 1.
NotFoundValue (opcional, pero muy recomendable) Valor que se debe devolver cuando la operación no encuentra una subcadena coincidente, normalmente 0, -1 o BLANK(). Si no se especifica, se devuelve un error.

Valor devuelto

Número de la posición inicial de la primera cadena de texto del primer carácter de la segunda cadena de texto.

Notas

  • La función de búsqueda no distingue mayúsculas de minúsculas. La búsqueda de "N" encontrará la primera aparición de 'N' o 'n'.

  • La función de búsqueda distingue acentos. La búsqueda de "á" encontrará la primera aparición de "á", pero ninguna aparición de 'a', 'à', o las versiones en mayúscula 'A', 'Á'.

  • Puede usar la función SEARCH para determinar la ubicación de un carácter o una cadena de texto dentro de otra cadena de texto y, a continuación, usar la función MID para devolver el texto o usar la función REPLACE para cambiar el texto.

  • Si no se encuentra el find_text en within_text, la fórmula devuelve un error. Este comportamiento es como Excel, que devuelve #VALUE si no se encuentra la subcadena. Los valores NULL en within_text se interpretarán como una cadena vacía en este contexto.

  • Esta función no se admite para su uso en el modo DirectQuery cuando se usa en columnas calculadas o reglas de seguridad de nivel de fila (RLS).

Ejemplo

La siguiente consulta DAX busca la posición de la primera letra de "ciclo", en la cadena que contiene el nombre del revendedor. Si no se encuentra, se devuelve Blank.

SEARCH no distingue mayúsculas de minúsculas. En este ejemplo, si se usa "cycle" o "Cycle" en el argumento find_text, los resultados se devuelven para cualquier caso. Use FIND para distinguir mayúsculas de minúsculas.

Los ejemplos de este artículo se pueden usar con el modelo de Power BI Desktop de Adventure Works 2020 de ejemplo. Para obtener el modelo, consulte DAX modelo de ejemplo.

EVALUATE
CALCULATETABLE (
    ADDCOLUMNS (
        TOPN ( 10, SUMMARIZE('Reseller', [Reseller], [Business Type])),
        "Position of cycle", SEARCH ( "cycle", 'Reseller'[Reseller], 1, BLANK () )
    ),
    'Reseller'[Business Type] IN { "Specialty Bike Shop", "Value Added Reseller", "Warehouse"}
)

Vea que devuelve lo siguiente:

Reseller Business Type (Tipo de empresa) Position of cycle
Volume Bike Sellers Warehouse
Mass Market Bikes Revendedor de valor agregado
Twin Cycles Revendedor de valor agregado 6
Rich Department Store Warehouse
Rental Gallery Specialty Bike Shop
Budget Toy Store Warehouse
Global Sports Outlet Warehouse
Online Bike Catalog Warehouse
Cascos y ciclos Revendedor de valor agregado 13
Jumbo Bikes Specialty Bike Shop

funciones Text