Sdílet prostřednictvím


SEARCH

platí pro:Počítaný sloupecPočítaná tabulkamíravizuální

Vrátí číslo znaku, na kterém je nejprve nalezen určitý znak nebo textový řetězec, který čte zleva doprava. Hledání nerozlišuje malá a velká písmena a rozlišují se na zvýraznění.

Syntaxe

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

Parametry

Pojem definice
find_text Text, který chcete najít.

V find_textmůžete použít zástupné znaky – otazník (?) a hvězdičku (*). Otazník odpovídá jakémukoli jednomu znaku; hvězdička odpovídá libovolné sekvenci znaků. Pokud chcete najít skutečný otazník nebo hvězdičku, zadejte před znak vlnovku (~).
within_text Text, ve kterém chcete hledat find_text, nebo sloupec obsahující text.
start_num (volitelné) Pozice znaku v within_text, ve které chcete začít hledat. Pokud tento parametr vynecháte, 1.
NotFoundValue (volitelné, ale důrazně doporučeno) Hodnota, která by se měla vrátit, když operace nenajde odpovídající podřetětěr, obvykle 0, -1 nebo BLANK(). Pokud není zadáno, vrátí se chyba.

Návratová hodnota

Číslo počáteční pozice prvního textového řetězce od prvního znaku druhého textového řetězce.

Poznámky

  • Vyhledávací funkce nerozlišuje malá a velká písmena. Hledání "N" najde první výskyt "N" nebo "n".

  • Vyhledávací funkce je citlivá na zvýraznění. Při hledání výrazu "á" se najde první výskyt "á", ale žádný výskyt 'a', 'à' nebo velkých písmen 'A', 'Á'.

  • Pomocí funkce SEARCH můžete určit umístění znaku nebo textového řetězce v jiném textovém řetězci a potom pomocí funkce MID vrátit text nebo pomocí funkce REPLACE změnit text.

  • Pokud find_text v within_textnenajdete, vzorec vrátí chybu. Toto chování se podobá Excelu, který vrátí #VALUE pokud se podřetězený řetězec nenajde. Hodnoty Null v within_text budou interpretovány jako prázdný řetězec v tomto kontextu.

  • Tato funkce není podporována pro použití v režimu DirectQuery při použití v počítaných sloupcích nebo pravidlech zabezpečení na úrovni řádků (RLS).

Příklad

Následující DAX dotaz najde pozici prvního písmena "cycle" v řetězci, který obsahuje název prodejce. Pokud se nenajde, vrátí se prázdná hodnota.

SEARCH nerozlišuje malá a velká písmena. V tomto příkladu, pokud se v argumentu find_text použije "cycle" nebo "Cycle", vrátí se výsledky pro oba případy. Pro rozlišování velkých a malých písmen použijte FIND.

Příklady v tomto článku můžete použít s ukázkovým modelem Adventure Works DW 2020 Power BI Desktopu. Pokud chcete model získat, podívejte se na DAX ukázkový model.

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"}
)

Návraty

Reseller Business Type (Typ podnikání) Pozice cyklu
Prodejci multilicenčních kol Sklad
Mass Market Bikes Prodejce s přidanou hodnotou
Cykly dvojčat Prodejce s přidanou hodnotou 6
Rich Department Store Sklad
Galerie pronájmů Specialty Bike Shop
Budget Toy Store Sklad
Global Sports Outlet Sklad
Online katalog kol Sklad
Helmy a cykly Prodejce s přidanou hodnotou 13
Jumbo Bikes Specialty Bike Shop

FIND REPLACE Textové funkce