# TextBetween - Komut dosyası ve grafik fonksiyonu

TextBetween(), girdi dizesinde ayırıcılar olarak belirtilen karakterler arasında olan metni döndürür.

Söz Dizimi:

TextBetween(text, delimiter1, delimiter2[, n])

Dönüş verileri türü: dize

Bağımsız Değişkenler

| Bağımsız Değişken | Açıklama |
| --- | --- |
| text | Orijinal dize. |
| delimiter1 | text içinde aranacak ilk sınırlayıcı karakteri (veya dizeyi) belirtir. |
| delimiter2 | text içinde aranacak ikinci sınırlayıcı karakteri (veya dizeyi) belirtir. |
| n | Sınırlayıcı çiftinin hangi oluşu arasında arama yapılacağını tanımlar. Örneğin, 2 değeri delimiter1 öğesinin ikinci oluşu ile delimiter2 öğesinin ikinci oluşu arasındaki karakterleri döndürür. |

Örnek: Grafik ifadeleri

| Örnek | Sonuç |
| --- | --- |
| `TextBetween( '<abc>',  			'<', '>' )` | `abc` döndürür |
| `TextBetween( '<abc><de>',   '<', '>',2 )` | `de` döndürür |
| `TextBetween( 'abc', '<', '>' )` | `NULL` döndürür<br><br>Dizede herhangi bir sınırlayıcı bulunmazsa `NULL` döndürülür. |
| `TextBetween( '<a<b', '<', '>' )` | `NULL` döndürür<br><br>Dizede herhangi bir sınırlayıcı bulunmazsa `NULL` döndürülür. |
| `TextBetween( '<>',  			'<', '>' )` | Sıfır uzunlukta bir dize döndürür. |
| `TextBetween( '<abc>',  			'<', '>', 2 )` | Sınırlayıcıların kullanılma sayısından daha büyük olduğundan `NULL` döndürür. |

## Örnek - TextBetween temel bilgileri

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

#### Grafik ifadesi

Genel bakış

Veri yükleme düzenleyicisini açın ve aşağıdaki komut dosyasını yeni bir bölüme ekleyin.

Komut dosyası şunları içerir:

* `Example` adlı veri tablosuna yüklenen bir veri kümesi.

* Veri tablosunda `InputText` adında bir alan.

Komut dosyası

```
Example:
Load * inline [
InputText,
<abc><de>
<def><ghi><jk>
];
```

Sonuçlar

Verileri yükleyin ve bir sayfa açın. Yeni bir tablo oluşturun ve şu alanı boyut olarak ekleyin:

* ` InputText
                                   `

Aşağıdaki hesaplanan boyutları oluşturun:

* `=TextBetween(InputText,'<','>')`, `InputText` alanında `'<'` ile `'>'` sınırlayıcıları arasında görünen karakterlerin ilk örneğini hesaplamak için.

* `=TextBetween(InputText,'<','>',2)`, `InputText` alanında `'<'` ile `'>'` sınırlayıcıları arasında görünen karakterlerin ikinci örneğini hesaplamak için.

Results table

| InputText | TextBetween(InputText,'&lt;','&gt;') | TextBetween(InputText,'&lt;','&gt;',2) |
| --- | --- | --- |
| &lt;abc&gt;&lt;de&gt; | abc | de |
| &lt;def&gt;&lt;ghi&gt;&lt;jkl&gt; | def | ghi |

İlk hesaplanan boyutta `TextBetween` fonksiyonunun çıktısı, `'<'` ile `'>'` sınırlayıcıları arasında görünen karakterlerin ilk örneğini döndürür. Örneğin, 1. satır `abc` döndürür. İkinci hesaplanan boyutta `2` `n` bağımsız değişkeni vardır, bu nedenle çıktı, `'<'` ile `'>'` sınırlayıcıları arasında görünen karakterlerin ikinci örneğini döndürür. Örneğin, 1. satır `de` döndürür.

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

#### Komut dosyası

Aşağıdaki kod, fonksiyonun bir komut dosyasında nasıl kullanılacağını gösterir.

```
Load *,
textbetween(Text,'<','>') as TextBetween,
textbetween(Text,'<','>',2) as SecondTextBetween;
Load * inline [
Text
<abc><de>
<def><ghi><jkl>];
```

Sonuçlar tablosu

| Metin | Metin Arası | İkinci Metin Arası |
| --- | --- | --- |
| &lt;abc&gt;&lt;de&gt; | abc | de |
| &lt;def&gt;&lt;ghi&gt;&lt;jkl&gt; | def | ghi |

## Örnek - TextBetween senaryosu

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

#### Grafik ifadesi

Genel bakış

Bir veri kümesi, e-posta adreslerini barındıran bir veri tablosu içerir. Bu örnek, adresten ikinci düzey etki alanını çıkarmak için `TextBetween` fonksiyonunu kullanır.

Veri yükleme düzenleyicisini açın ve aşağıdaki komut dosyasını yeni bir bölüme ekleyin.

Komut dosyası şunları içerir:

* `Example` adlı veri tablosuna yüklenen bir veri kümesi.

* Veri tablosundaki şu alanlar:

  * `UserID`

  * `EmailAddress`

Komut dosyası

```
Example:
Load * inline [
UserID, EmailAddress
1, alice@example.com
2, bob@sample.org
3, charlie@domain.net
];
```

Sonuçlar

Verileri yükleyin ve bir sayfa açın. Yeni bir tablo oluşturun ve şu alanları boyut olarak ekleyin:

* ` UserID
                                   `

* `EmailAddress`

Aşağıdaki hesaplanan boyutu oluşturun:

* `=TextBetween(EmailAddress,'@', '.')`, `EmailAddress` alanındaki `'@'` ve `'.'` karakterleri arasındaki metni döndürmek için.

Results table

| UserID | EmailAddress | TextBetween(EmailAddress,'@', '.') |
| --- | --- | --- |
| 1 | alice@example.com | example |
| 2 | bob@sample.org | sample |
| 3 | charlie@domain.net | domain |

`TextBetween` fonksiyonunun çıktısı, belirtilen sınırlayıcılar arasında içerik arayarak her kullanıcı kimliği için ikinci düzey etki alanını döndürür: `'@'` ve `'.'`.