WYSZUKIWANIE
Zwraca liczbę znaków, w których najpierw można odnaleźć określony znak lub ciąg tekstowy, odczytując od lewej do prawej. Wyszukiwanie jest rozróżniane bez uwzględniania wielkości liter i akcentu.
Składnia
SEARCH(<find_text>, <within_text>[, [<start_num>][, <NotFoundValue>]])
Parametry
Termin | Definicja |
---|---|
Szukany_tekst | Tekst, który chcesz znaleźć. Można użyć symboli wieloznacznych — znaku zapytania (?) i gwiazdki (*) w find_text. Znak zapytania pasuje do dowolnego pojedynczego znaku; gwiazdka pasuje do dowolnej sekwencji znaków. Jeśli chcesz znaleźć rzeczywisty znak zapytania lub gwiazdkę, wpisz tyldę (~) przed znakiem. |
Obejmujący_tekst | Tekst, w którym chcesz wyszukać find_text lub kolumnę zawierającą tekst. |
Liczba_początkowa | (opcjonalnie) Położenie znaku w within_text , w którym chcesz rozpocząć wyszukiwanie. Jeśli pominięto, 1. |
NotFoundValue | (opcjonalnie, ale zdecydowanie zalecane) Wartość, która powinna być zwracana, gdy operacja nie znajduje pasującego podciągu, zazwyczaj 0, -1 lub BLANK(). Jeśli nie zostanie określony, zostanie zwrócony błąd. |
Wartość zwracana
Liczba pozycji początkowej pierwszego ciągu tekstowego z pierwszego znaku drugiego ciągu tekstowego.
Uwagi
Funkcja wyszukiwania jest niewrażliwa na wielkość liter. Wyszukiwanie ciągu "N" spowoduje znalezienie pierwszego wystąpienia "N" lub "n".
Funkcja wyszukiwania jest wrażliwa na akcent. Wyszukiwanie "á" znajdzie pierwsze wystąpienie "á", ale nie wystąpień "a", "à" lub skapitalizowanych wersji "A", "Á".
Za pomocą funkcji SEARCH można określić lokalizację znaku lub ciągu tekstowego w innym ciągu tekstowym, a następnie użyć funkcji MID, aby zwrócić tekst, lub użyć funkcji REPLACE, aby zmienić tekst.
Jeśli nie można odnaleźć find_text w within_text, formuła zwraca błąd. To zachowanie jest podobne do programu Excel, który zwraca #VALUE, jeśli podciąg nie zostanie znaleziony. Wartości null w within_text będą interpretowane jako pusty ciąg w tym kontekście.
Ta funkcja nie jest obsługiwana w trybie DirectQuery w przypadku użycia w kolumnach obliczeniowych lub regułach zabezpieczeń na poziomie wiersza.
Przykład
Następujące zapytanie języka DAX znajduje pozycję pierwszej litery "cycle" w ciągu zawierającym nazwę odsprzedawcy. Jeśli nie zostanie znaleziona, zostanie zwrócona wartość Blank.
Funkcja SEARCH nie uwzględnia wielkości liter. W tym przykładzie, jeśli w argumencie <find_text> jest używany ciąg "cycle" lub "Cycle", wyniki są zwracane dla obu przypadków. Użyj funkcji FIND w przypadku rozróżniania wielkości liter.
Przykłady w tym artykule mogą być używane z przykładowym modelem Adventure Works DW 2020 Power BI Desktop. Aby uzyskać model, zobacz przykładowy model języka DAX.
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"}
)
Zwraca
Reseller (Odsprzedawca) | Business Type (Typ biznesowy) | Położenie cyklu |
---|---|---|
Sprzedawcy rowerów zbiorczych | Magazyn | |
Rowery masowego rynku | Value Added Reseller | |
Cykle bliźniaczych reprezentacji | Value Added Reseller | 6 |
Bogaty dom towarowy | Magazyn | |
Galeria wynajmu | Specialty Bike Shop | |
Budget Toy Store | Magazyn | |
Globalny punkt sprzedaży sportowej | Magazyn | |
Katalog rowerów online | Magazyn | |
Kaski i cykle | Value Added Reseller | 13 |
Jumbo Bikes | Specialty Bike Shop |
Powiązana zawartość
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla