# IsRegEx Komut dosyası ve grafik fonksiyonu

IsRegEx(), belirtilen metnin geçerli bir normal ifade olup olmadığını döndürür.

Bu fonksiyon, büyük/küçük harfe duyarlı regex işlemleri gerçekleştirir. Büyük/küçük harfe duyarlı olmayan regex işlemleri gerçekleştirmek için alternatif olarak IsRegExI() varyantını kullanabilirsiniz.

Söz Dizimi:

IsRegEx (expr [, debug])

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

Bağımsız Değişkenler

| Bağımsız Değişken | Açıklama |
| --- | --- |
| expr | Değerlendirilecek normal ifadeyi içeren dize ifadesi. |
| debug | İsteğe bağlı bağımsız değişken. Bu bağımsız değişken için herhangi bir değer belirtilirse ifade, geçersiz bir normal ifadenin nasıl düzeltilebileceğini özetleyen bir metin ipucu döndürür. |

Fonksiyon örnekleri

| Örnek | Sonuç |
| --- | --- |
| `IsRegEx('[a-z]')` | `-1` (doğru) döndürür. |
| `IsRegEx(']0-1[', 1)` | Bu örnek, `]0-1[` geçersiz normal ifadeyi düzeltmek için bir ipucu içeren bir hata mesajı döndürür. |
| `IsRegEx('[a-z')` | `0` (yanlış) döndürür. debug bağımsız değişkeni belirtilmediği için herhangi bir hata mesajı gösterilmez. |

## IsRegEx ne zaman kullanılmalı?

Yazdığınız normal ifadelerin Qlik Sense içinde geçerli olup olmadığını test etmek için IsRegEx() kullanabilirsiniz. Örneğin, uygulamanıza giriş metni ve metnin geçerliliğinin regex olarak değerlendirilmesi ile bir tablo yükleyebilirsiniz.

## Örnek 1 - regex'in geçerliliğinin veri modeline yüklenmesi

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

#### Yükleme kodu ve sonuçlar

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:

* Geçerli normal ifadeler olabilen veya olmayan giriş dizelerini içeren bir alan, `reg_exp`.

* `reg_exp` içinde her bir değerin geçerli bir düzenli ifade olup olmadığını kontrol etmek için iki hesaplanan alan:

  * `validity_no_hint`: regex geçerliyse `-1` (doğru), geçersizse 0 (yanlış) adresini görüntüler.

  * `validity_with_hint`: regex geçerliyse -1 (doğru) görüntüler. Regex geçersizse otomatik olarak oluşturulan bir hata mesajı, düzeltmeye yardımcı olacak olası ipuçlarıyla birlikte girdiyle ilgili sorunları ana hatlarıyla belirtir.

Komut dosyası

```
[Expression Validity]:
	Load
		*,
		IsRegEx(reg_exp) as validity_no_hint,
		IsRegEx(reg_exp,1) as validity_with_hint
		;
Load
*
Inline
`
reg_exp
[a-z]+
([a-z)(0-9)+
abcdefg|[0-7
\$|¢(0-9)
`;
```

Sonuçlar

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

* `
  reg_exp`

* `validity_no_hint`

* `validity_with_hint`

Sonuçlar tablosu

| reg\_exp | validity\_no\_hint | validity\_with\_hint |
| --- | --- | --- |
| ([a-z)(0-9)+ | 0 | -1 |
| [a-z]+ | -1 | İpucu metni (otomatik oluşturulur) |
| \$\|¢(0-9) | -1 | İpucu metni (otomatik oluşturulur) |
| abcdefg\|[0-7 | 0 | -1 |

## Örnek 2 – sadece geçerli regex'in veri modeline yüklenmesi

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

#### Yükleme kodu ve sonuçlar

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:

* Geçerli normal ifadeler olabilen veya olmayan giriş dizelerini içeren bir alan, `reg_exp`. Bu alan, `Regular Expressions` adlı bir tabloda yer almaktadır.

* Yalnızca girdi geçerli bir normal ifade olduğunda kayıtları veri modeline yükleyen bir where cümlesi.

Komut dosyası

```
[Regular Expressions]:

Load
*
Inline
`
reg_exp
[a-z]+
([a-z)(0-9)+
abcdefg|[0-7
\$|¢(0-9)
`
WHERE
IsRegEx(reg_exp)=True()
;
```

Sonuçlar

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

* `
  reg_exp`

Sonuçlar tablosu

| reg\_exp |
| --- |
| [a-z]+ |
| \$\|¢(0-9) |

`[a-z]+` ve `\$|¢(0-9)`, geçerli normal ifadelerdir, bu nedenle veri modeline yüklenmişlerdir. `([a-z)(0-9)+` ve `abcdefg|[0-7` geçerli normal ifadeler değildir, bu nedenle veri modeline yüklenmemişlerdir.

## Örnek 3 – grafik ifadeleri

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

#### Grafik ifadeleri ve sonuçları

Genel bakış

Bu örnekte, veri modeline bir dizi giriş dizesi yüklüyoruz ve bunları regex'in geçerliliğini değerlendiren iki hesaplanan boyutla birlikte bir tabloya ekliyoruz. Hesaplanan iki boyut aynı bilgiyi farklı şekillerde aktarmaktadır.

Veri yükleme düzenleyicisi bölümünü açın ve aşağıdaki yükleme kodunu yeni bir bölüme ekleyin.

Komut dosyası, geçerli normal ifadeler olabilen veya olmayan giriş dizelerini içeren bir alan, `reg_exp` içeriyor. Bu alan, `Regular Expressions` adlı bir tabloda yer almaktadır.

Komut dosyası

```
[Regular Expressions]:

Load
*
Inline
`
reg_exp
[a-z]+
([a-z)(0-9)+
abcdefg|[0-7
\$|¢(0-9)
`;
```

Sonuçlar

Aşağıdakileri yapın:

1. Verileri yükleyin ve bir sayfa açın. Yeni bir tablo oluşturun. Boyut olarak `reg_exp` öğesini ekleyin.

2. Ardından, aşağıdaki hesaplanan boyutu ekleyin:

   `=IsRegEx(reg_exp)`

   Bu, girdi geçerli bir normal ifade ise `-1` (doğru), değilse `0` (yanlış) adresini gösteren temel bir grafik ifadesidir.

3. Başka bir hesaplanan boyutu ekleyin:

   `=if(IsRegEx(reg_exp), 'Valid regex', 'Invalid regex')`

   Bu, girdinin geçerliliğine ilişkin daha fazla ayrıntı sunan koşullu bir ifadedir.

Sonuçlar tablosu

| reg\_exp | =IsRegEx(reg\_exp) | =if(IsRegEx(reg\_exp), 'Valid regex', 'Invalid regex') |
| --- | --- | --- |
| ([a-z)(0-9)+ | 0 | Invalid regex |
| [a-z]+ | -1 | Valid regex |
| \$\|¢(0-9) | -1 | Valid regex |
| abcdefg\|[0-7 | 0 | Invalid regex |

## Daha fazla bilgi

* [Komut dosyalarında ve grafik ifadelerinde normal ifadelerle çalışma](https://help.qlik.com/tr-TR/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/regular-expressions-qlik-analytics.htm)