# Mid - Skript- und Diagrammfunktion

Mid() liefert den Teil des Eingabestrings, der bei der Position des durch das zweite Argument, 'start', definierten Zeichens beginnt, wobei die Stringlänge durch das dritte Argument 'count' definiert wird. Wird 'count' weggelassen, wird die Position des ersten Vorkommens ausgegeben. Die Nummerierung des ersten Zeichens im Eingabestring beginnt bei 1.

Syntax:

Mid(text, start[, count])

Rückgabe Datentyp: String

Argumente

| Argument | Beschreibung |
| --- | --- |
| text | Der Original-String. |
| start | Ganzzahl, die die Position des ersten Zeichens in text festlegt, das enthalten sein soll. |
| count | Definiert die Stringlänge des Ausgabestrings. Ist nichts definiert, werden alle Zeichen ab der durch start definierten Position einbezogen. |

Beispiel: Diagrammformeln

| Beispiel | Ergebnis |
| --- | --- |
| `Mid( 'abcdef',3 )` | Gibt `cdef` zurück |
| `Mid( 'abcdef',3, 2 )` | Gibt `cd` zurück |

## Beispiel – Grundlegendes zu „Mid“

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/Mid.htm)

#### Diagrammformel

Übersicht

Öffnen Sie den Dateneditor und fügen Sie das Ladeskript unten in einen neuen Abschnitt ein.

Das Ladeskript umfasst:

* Datensatz, der in eine Datentabelle namens `Example` geladen wird

* Die folgenden Felder in der Datentabelle:

  * `InputText`, der Original-String

  * `StartPosition`, die Anfangsposition des ersten Zeichens, das nach der Verarbeitung aus dem ursprünglichen Textstring aufgenommen wird

  * `CharacterCount`, die Anzahl der Zeichen, die zurückgegeben werden sollen (optionaler Parameter)

Ladeskript

```
Example:
Load * inline [
InputText, StartPosition, CharacterCount
abcdef, 3, 2
abcdef, 2, 3
210714, 3, 2
210714, 2, 3
];
```

Ergebnisse

Laden Sie die Daten und öffnen Sie ein Arbeitsblatt. Erstellen Sie eine neue Tabelle und fügen Sie die folgenden Felder als Dimensionen hinzu:

* ` InputText
                                   `

* `StartPosition`

* `CharacterCount`

Erstellen Sie die folgenden dynamischen Dimensionen:

* `=mid(InputText,StartPosition)`, um die zu extrahierenden Zeichen aus `InputText` zu berechnen, beginnend mit dem Wert im Feld `StartPosition`. Die Funktion gibt alle Zeichen ab dem Wert `StartPosition` bis zum Ende von `InputString` zurück, da kein Parameter `Count` angegeben wurde.

* `=mid(InputText,StartPosition,CharacterCount)`, um die zu extrahierenden Zeichen aus `InputText` zu berechnen, beginnend mit dem Wert im Feld `StartPosition`. Der Wert in `CharacterCount` bestimmt die Anzahl der zurückgegebenen Zeichen, ausgehend von dem Wert im Feld `StartPosition`.

Ergebnistabelle

| InputText | StartPosition | CharacterCount | Mid(InputText,StartPosition) | Mid(InputText,StartPosition,CharacterCount |
| --- | --- | --- | --- | --- |
| abcdef | 2 | 3 | bcdef | bcd |
| abcdef | 3 | 2 | cdef | cd |
| 20210714 | 2 | 3 | 10714 | 107 |
| 20210714 | 3 | 2 | 0714 | 07 |

Die erste Zeile gibt den Wert `bcdef` für den ersten Ausdruck zurück. Der Ausdruck beginnt an Position 2 und gibt alle Zeichen zurück, da das Argument `Count` nicht festgelegt ist. Der zweite Ausdruck beginnt ebenfalls an Position 2, gibt aber nur die Zeichen `bcd` zurück, da das Argument `Count` nicht festgelegt ist.

Die zweite Zeile gibt den Wert `cdef` für den ersten Ausdruck zurück. Der Ausdruck beginnt an Position 3 und gibt alle Zeichen zurück, da das Argument `Count` nicht festgelegt ist. Der zweite Ausdruck beginnt ebenfalls an Position 3, gibt aber nur die Zeichen `cd` zurück, da das Argument `Count` 2 ist.

Die dritte Zeile gibt den Wert `10714` für den ersten Ausdruck zurück. Der Ausdruck beginnt an Position 2 und gibt alle Zeichen zurück, da das Argument `Count` nicht festgelegt ist. Der zweite Ausdruck beginnt ebenfalls an Position 2, gibt aber nur die Zeichen `107` zurück, da das Argument `Count` 3 ist.

Die vierte Zeile gibt den Wert `0714` für den ersten Ausdruck zurück. Der Ausdruck beginnt an Position 3 und gibt alle Zeichen zurück, da das Argument `Count` nicht festgelegt ist. Der zweite Ausdruck beginnt ebenfalls an Position 2, gibt aber nur die Zeichen `07` zurück, da das Argument `Count` nicht festgelegt ist.

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/Mid.htm)

#### Ladeskript

Der folgende Code zeigt, wie Sie die Funktion in einem Ladeskript verwenden können.

```
Example:
Load *,
mid(Text,StartPosition) as Mid1,
mid(Text,StartPosition,Count) as Mid2;
Load * inline [
Text, StartPosition, Count
'abcdef', 3, 2
'abcdef', 2, 3
'210714', 3, 2
'210714', 2, 3
];
```

Ergebnistabelle

| Text | StartPosition | Mid1 | Anzahl | Mid2 |
| --- | --- | --- | --- | --- |
| abcdef | 3 | cdef | 2 | cd |
| abcdef | 2 | bcdef | 3 | bcd |
| 210714 | 3 | 0714 | 2 | 07 |
| 210714 | 2 | 10714 | 3 | 107 |

## Beispiel – Szenario für „Mid“

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/Mid.htm)

#### Diagrammformel

Übersicht

Eine Datenquelle enthält eine Spalte namens `OrderID`, die das folgende strukturierte Format verwendet: `ORDYYYY-COUNTRYCODE-ORDERNUMBER`. Um eine Berichtspflicht zu erfüllen, müssen Sie den Ländercode extrahieren und in einer separaten Spalte darstellen.

Öffnen Sie den Dateneditor und fügen Sie das Ladeskript unten in einen neuen Abschnitt ein.

Das Ladeskript umfasst:

* Datensatz, der in eine Datentabelle namens `Orders` geladen wird

* Ein Feld in der Datentabelle heißt `OrderID`.

Ladeskript

```
Orders:
Load * inline [
OrderID
ORD2024-US-123456
ORD2024-UK-654321
ORD2024-CA-789123
];
```

Ergebnisse

Laden Sie die Daten und öffnen Sie ein Arbeitsblatt. Erstellen Sie eine neue Tabelle und fügen Sie dieses Feld als Dimension hinzu:

* ` OrderID
                                   `

Erstellen Sie die folgende berechnete Dimension:

* `=Mid(OrderID, 9, 2)`, um den aus zwei Buchstaben bestehenden Ländercode aus der `OrderID` zu extrahieren.

Ergebnistabelle

| OrderID | Mid(OrderID, 9, 2) |
| --- | --- |
| ORD2024-CA-789123 | CA |
| ORD2024-UK-654321 | UK |
| ORD2024-US-123456 | US |

Die Ausgabe der Funktion `Mid` hat erfolgreich die aus zwei Buchstaben bestehenden Ländercodes aus den Werten des Strings `OrderID` extrahiert.

## Weitere Informationen

* [Index - Skript- und Diagrammfunktion](https://help.qlik.com/de-DE/sense/November2025/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/Index.htm)