Index() durchsucht einen String, um die Startposition des n-ten Vorkommens eines angegebenen Teilstrings zu ermitteln. Ein optionales drittes Argument liefert den Wert von n. Erfolgt keine Eingabe, wird 1 verwendet. Bei einem negativen Wert wird vom Ende des Strings aus gesucht. Die Positionen im String werden von links nach rechts beginnend mit 1 aufsteigend nummeriert.
Syntax:
Index(text, substring[, count])
Rückgabe Datentyp: ganze Zahl
Argumente
Argument
Beschreibung
text
Der Original-String.
substring
Ein String, nach dem in text gesucht werden soll.
InformationshinweisWenn der Teilstring nicht im Text vorhanden ist, gibt Index 0 zurück.
count
Definiert, nach welchem Vorkommen von substring gesucht werden soll. Beim Wert 2 wird beispielsweise nach dem zweiten Vorkommen gesucht. Bei einem negativen Wert wird am Ende des Strings begonnen.
Beispiel: Diagrammformeln
Beispiel
Ergebnis
Index( 'abcdefg', 'cd' )
Gibt 3 zurück
Index( 'abcdabcd', 'b', 2 )
Gibt 6 zurück (das zweite Vorkommen von b)
Index( 'abcdabcd', 'b',-2 )
Gibt 2 zurück (das zweite Vorkommen von b, vom Ende aus begonnen)
Left( Date, Index( Date,'-') -1 ) where Date = 1997-07-14
Gibt 1997 zurück
Mid( Date, Index( Date, '-', 2 ) -2, 2 ) where Date = 1997-07-14
Gibt 07 zurück
Index( 'abc', 'x' )
Gibt 0 zurück (x ist im String abc nicht vorhanden)
Index( 'abc', 'a', 2 )
Gibt 0 zurück (a kommt kein zweites Mal vor)
Beispiel – Grundlegendes zu „Index“
Übersicht
Öffnen Sie den Dateneditor und fügen Sie das Ladeskript unten in eine neue Registerkarte ein.
Das Ladeskript umfasst:
Datensatz, der in eine Datentabelle namens Example geladen wird
Laden Sie die Daten und öffnen Sie ein Arbeitsblatt. Erstellen Sie eine neue Tabelle und fügen Sie dieses Feld als Dimension hinzu:
InputString
Erstellen Sie die folgenden dynamischen Dimensionen:
=Index(InputString, 'cd')
=Index(InputString, 'e')
=Index(InputString, 'b', -1)
Ergebnistabelle
InputString
Index(InputString, 'cd')
Index(InputString, 'e')
Index(InputString, 'b', -1)
abcdabcd
3
0
6
abcdefg
3
5
2
Die erste Zeile mit dem String abcdabcd gibt Folgendes zurück:
3 – das erste Vorkommen von cd
0 – weil e im String nicht gefunden wird
6 – das erste Vorkommen von b ab dem Ende des Strings
Die zweite Zeile mit dem String abcdefg gibt Folgendes zurück:
3 – das erste Vorkommen von cd
5 – das erste Vorkommen von e
2 – das erste Vorkommen von b ab dem Ende des Strings
InformationshinweisEin negativer count-Parameter scannt den String in umgekehrter Richtung. Die zurückgegebene Position wird jedoch immer von links nach rechts angegeben, auch wenn sie in umgekehrter Reihenfolge gescannt wird.
Der folgende Code zeigt, wie Sie die Funktion in einem Ladeskript verwenden können.
Example:
Load
*,
index(String, 'cd') as Index_CD, // returns 3 in Index_CD
index(String, 'b') as Index_B, // returns 2 in Index_B
index(String, 'b', -1) as Index_B2; // returns 2 or 6 in Index_B2
Load * inline [
String
abcdefg
abcdabcd ];
Ergebnistabelle
String
Index_CD
Index_B
Index_B2
abcdefg
3
2
2
abcdabcd
3
2
6
Beispiel – Szenario für „Index“
Übersicht
Ein Kunden-Support-Center verfügt über einen Datensatz, der die Betreffzeilen aus Kunden-E-Mails enthält. Das Support-Center möchte diese E-Mails anhand der Schlüsselwörter in der Betreffzeile kategorisieren, zum Beispiel Refund, Complaint und Technical Issue. Die Betreffzeilen werden im Datensatz in einem Feld namens EmailSubject gespeichert.
Öffnen Sie den Dateneditor und fügen Sie das Ladeskript unten in eine neue Registerkarte ein.
Das Ladeskript umfasst:
Datensatz, der in eine Datentabelle namens Example geladen wird
Ein Feld in der Datentabelle heißt EmailSubject.
Ladeskript
Example:
Load * inline [
EmailSubject
Request for a Refund - Order 12345
Technical Issue with Product XYZ
Complaint about delivery service
Follow-up on Refund Request
Technical Issue not resolved
];
Ergebnisse
Laden Sie die Daten und öffnen Sie ein Arbeitsblatt. Erstellen Sie eine neue Tabelle und fügen Sie dieses Feld als Dimension hinzu:
EmailSubject
Erstellen Sie die folgende berechnete Dimension:
=If(Index(EmailSubject, 'Refund') > 0, 'Refund', 'Other'), um zu berechnen, welche E-Mail-Betrefftexte sich auf Erstattungen beziehen.
Die Ausgabe der Funktion Index hat erfolgreich alle Betreffzeilen identifiziert, die den String Refund enthalten. Dies ist ein Beispiel dafür, wie Sie Daten mithilfe von verschachtelten Funktionen analysieren und kategorisieren und den Benutzern einen Mehrwert bieten können.
Hat diese Seite Ihnen geholfen?
Wenn Sie Probleme mit dieser Seite oder ihren Inhalten feststellen – einen Tippfehler, einen fehlenden Schritt oder einen technischen Fehler –, teilen Sie uns bitte mit, wie wir uns verbessern können!