SEARCH

Gilt für:Berechnete SpalteBerechnete TabelleMeasureVisuelle Berechnung

Gibt die Zeichenposition zurück, an der ein bestimmtes Zeichen oder eine bestimmte Textzeichenfolge zuerst gefunden wird, gelesen von links nach rechts. Bei dieser Funktion muss die Groß-/Kleinschreibung beachtet werden.

Syntax

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

Parameter

Begriff Definition
find_text Der Text, den Sie suchen möchten.

Sie können in find_text auch Platzhalterzeichen verwenden – ein Fragezeichen (?) oder Sternchen (*). Ein Fragezeichen entspricht einem beliebigen einzelnen Zeichen; ein Sternchen entspricht einer beliebigen Zeichenabfolge. Wenn Sie ein tatsächliches Fragezeichen oder Sternchen suchen möchten, geben Sie eine Tilde (~) vor dem Zeichen ein.
within_text Der Text, in dem Sie nach find_text suchen möchten, oder eine Spalte, die Text enthält.
start_num (optional) Die Zeichenposition in within_text, an der der Suchvorgang beginnen soll. Wenn nicht angegeben, der Standardwert 1.
NotFoundValue (optional, jedoch dringend empfohlen) Der Wert, der zurückgegeben werden muss, wenn der Vorgang keine passende Teilzeichenfolge (substring) findet, in der Regel 0, –1 oder BLANK(). Wenn kein Wert angegeben ist, wird ein Fehler zurückgegeben.

Rückgabewert

Die Nummer der Startposition der ersten Zeichenfolge vom ersten Zeichen der zweiten Zeichenfolge.

Bemerkungen

  • Bei der SEARCH-Funktion muss die Groß-/Kleinschreibung beachtet werden. Bei der Suche nach „N“ wird das erste Vorkommen von „N“ oder „n“ gefunden.

  • Bei der SEARCH-Funktion wird nach Akzent unterschieden. Mit der Suche nach „á“ wird das erste Vorkommen von „á“ gefunden, aber keine Vorkommen von „a“, „à“ oder den großgeschriebenen Versionen „A“, „Á“.

  • Mit der SEARCH-Funktion können Sie die Position eines Zeichens oder einer Textzeichenfolge innerhalb einer anderen Textzeichenfolge bestimmen. Anschließend können Sie den Text mit der MID-Funktion zurückgeben oder ihn mit der REPLACE-Funktion ändern.

  • Wenn der Text für find_text nicht in within_text gefunden wird, gibt die Formel einen Fehler zurück. Dieses Verhalten ähnelt Excel, das #VALUE zurückgibt, wenn die Teilzeichenfolge nicht gefunden wird. Nullen in within_text werden in diesem Kontext als leere Zeichenfolge interpretiert.

  • Die Verwendung dieser Funktion im DirectQuery-Modus wird nicht unterstützt, wenn sie in berechneten Spalten oder RLS-Regeln (Row-Level Security) eingesetzt wird.

Beispiel

Die folgende DAX-Abfrage sucht die Position des ersten Buchstabens von „cycle“ (Fahrrad fahren) in der Zeichenfolge, die den Namen des Handelspartners enthält. Wenn sie nicht gefunden wird, wird „BLANK“ zurückgegeben.

Bei „SEARCH“ wird die Groß-/Kleinschreibung nicht beachtet. Wenn in diesem Beispiel im <find_text>-Argument „cycle“ oder „Cycle“ verwendet wird, werden Ergebnisse für beide Fälle zurückgegeben. Verwenden Sie FIND, wenn die Groß-/Kleinschreibung beachtet werden soll.

Die Beispiele in diesem Artikel können mit dem Adventure Works SW 2020 Power BI Desktop Beispielmodell verwendet werden. Informationen zum Abrufen des Modells finden Sie unter DAX-Beispielmodell.

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

gibt diese Werte zurück:

Reseller Business Type Position von „cycle“
Volume Bike Sellers Warehouse
Mass Market Bikes Value Added Reseller
Twin Cycles Value Added Reseller 6
Rich Department Store Warehouse
Rental Gallery Specialty Bike Shop
Budget Toy Store Warehouse
Global Sports Outlet Warehouse
Online Bike Catalog Warehouse
Helmets and Cycles Value Added Reseller 13
Jumbo Bikes Specialty Bike Shop

FIND
REPLACE
Textfunktionen.