|
<< İçindekileri Görüntülemek İçin Tıklayın >> Yer: Teknik Kılavuzlar > IVEDI SQL Kullanıcı Kılavuzu > 5. Operatörler ve yerleşik fonksiyonlar > 5.8 Düzenli ifade fonksiyonları |
İki ayrı aile vardır ve eşanlamlı değildir: SQL:2016 F844 ailesi XQuery
kalıpları kullanır ve konumları karakter cinsinden verir; PostgreSQL uyumlu aile POSIX/ARE
kalıpları ve PostgreSQL bayrak harfleri (i c s n m p w x q g) kullanır.
| İmza |
|---|
OCCURRENCES_REGEX(<kalıp> [FLAG <bayraklar>] IN <s> [FROM <başlangıç>]) |
POSITION_REGEX([START|AFTER] <kalıp> [FLAG <b>] IN <s> [FROM <p>] [OCCURRENCE <n>] [GROUP <g>]) |
SUBSTRING_REGEX(<kalıp> [FLAG <b>] IN <s> [FROM <p>] [OCCURRENCE <n>] [GROUP <g>]) |
TRANSLATE_REGEX(<kalıp> [FLAG <b>] IN <s> [WITH <yerine>] [FROM <p>] [OCCURRENCE <n>]) |
GROUP 0 tüm eşleşme demektir; bulunamazsa POSITION_REGEX 0,
SUBSTRING_REGEX NULL döndürür. POSITION_REGEX'te START eşleşmenin
başını, AFTER eşleşmeden hemen sonraki konumu verir. TRANSLATE_REGEX'te
OCCURRENCE 0 (öndeğer) standardın ALL'una karşılık gelir; WITH
yazılmazsa eşleşen parça silinir; yerine koyma kalıbı XQuery biçimindedir ($1…$N grup,
\$ ve \\ düz karakter). USING birim yan tümcesi yoktur;
konumlar her zaman karakter sayılır.
| İmza |
|---|
REGEXP_COUNT(s, kalıp [, başlangıç] [, bayraklar]) |
REGEXP_INSTR(s, kalıp [, başlangıç] [, n] [, endoption] [, bayraklar] [, altifade]) |
REGEXP_LIKE(s, kalıp [, bayraklar]) |
REGEXP_REPLACE(s, kalıp, yerine [, bayraklar]) |
REGEXP_REPLACE(s, kalıp, yerine, başlangıç [, n] [, bayraklar]) |
REGEXP_SUBSTR(s, kalıp [, başlangıç] [, n] [, bayraklar] [, altifade]) |
REGEXP_REPLACE'in başlangıçlı biçiminde n yazılmazsa yalnızca ilk eşleşme
değiştirilir (g bayrağı yoksa); açıkça yazılan n = 0 bütün eşleşmeler demektir.
Dizi döndüren düzenli ifade fonksiyonları yoktur: REGEXP_MATCHES,
REGEXP_SPLIT_TO_ARRAY, REGEXP_SPLIT_TO_TABLE bildirilmemiştir.