Translation not up to date
The translation of this page does not represent the latest version. For the latest updates, see the English version of the documentation.
Last updated: 04. 4. 2023
Pomocí produktu CLEM můžete spouštět operace pro porovnání řetězců, vytváření řetězců nebo přístupové znaky.
V produktu CLEM se jedná o posloupnost znaků mezi odpovídajícími dvojitými uvozovkami ("string quotes"
). Znaky (CHAR
) mohou být libovolný alfanumerický znak. Jsou deklarovány ve výrazech CLEM pomocí jednoduchých uvozovek ve formě `<character>`
, jako je `z`
, `A`
nebo `2`
. Znaky, které jsou mimo rozsah nebo záporné indexy na řetězec, budou mít za následek nedefinované chování.
Poznámka: Porovnání mezi řetězci, které používají a které nepoužívají zpětné lomítko SQL, může generovat různé výsledky, pokud existují koncové mezery.
Funkce | Výsledek | Popis |
---|---|---|
allbutfirst(N, STRING) |
Řetězec | Vrací řetězec, který je STRING s prvními N znaky, které byly odstraněny. |
allbutlast(N, STRING) |
Řetězec | Vrací řetězec, který je STRING s odebraným posledním znakem. |
alphabefore(STRING1, STRING2) |
Logická hodnota | Používá se ke kontrole abecedního pořadí řetězců. Vrátí logickou hodnotu true, pokud STRING1 předchází STRING2 . |
count_substring(STRING, SUBSTRING) |
Celé číslo | Vrátí počet, kolikrát se uvedený podřetězec vyskytuje v řetězci. Příklad: count_substring("foooo.txt", "oo") vrátí hodnotu 3 . |
endstring(LENGTH, STRING) |
Řetězec | Extrahuje poslední N znaky ze zadaného řetězce. Je-li délka řetězce menší nebo rovna zadané délce, pak se nezmění. |
hasendstring(STRING, SUBSTRING) |
Celé číslo | Tato funkce je stejná jako isendstring(SUBSTRING, STRING) . |
hasmidstring(STRING, SUBSTRING) |
Celé číslo | Tato funkce je stejná jako ismidstring(SUBSTRING, STRING) (vložený podřetězec). |
hasstartstring(STRING, SUBSTRING) |
Celé číslo | Tato funkce je stejná jako isstartstring(SUBSTRING, STRING) . |
hassubstring(STRING, N, SUBSTRING) |
Celé číslo | Tato funkce je stejná jako issubstring(SUBSTRING, N, STRING) , kde N standardně zobrazuje 1 . |
hassubstring(STRING, SUBSTRING) |
Celé číslo | Tato funkce je stejná jako issubstring(SUBSTRING, 1, STRING) , kde N standardně zobrazuje 1 . |
isalphacode(CHAR) |
Logická hodnota | Vrací hodnotu true, pokud CHAR je znak v uvedeném řetězci (často jméno pole), jehož znakový kód je písmeno. V opačném případě tato funkce vrací hodnotu parametru 0 . Například isalphacode(produce_num(1)) . |
isendstring(SUBSTRING, STRING) |
Celé číslo | Pokud řetězec STRING končí řetězcem podřetězcem SUBSTRING , vrací tato funkce celočíselný dolní index SUBSTRING v STRING . V opačném případě tato funkce vrací hodnotu parametru 0 . |
islowercode(CHAR) |
Logická hodnota | Vrací hodnotu true , pokud CHAR je znak malého písmene pro zadaný řetězec (často název pole). V opačném případě tato funkce vrací hodnotu parametru 0 . Platnými výrazy jsou například islowercode(``) a islowercode(country_name(2)) . |
ismidstring(SUBSTRING, STRING) |
Celé číslo | Pokud SUBSTRING je podřetězec STRING , ale nezačíná na prvním znaku STRING nebo končí na posledním, pak tato funkce vrací dolní index, na kterém začíná podřetězec. V opačném případě tato funkce vrací hodnotu parametru 0 . |
isnumbercode(CHAR) |
Logická hodnota | Vrací hodnotu true, pokud CHAR pro zadaný řetězec (často název pole) je znak, jehož znakový kód je číslice. V opačném případě tato funkce vrací hodnotu parametru 0 . Například isnumbercode(product_id(2)) . |
isstartstring(SUBSTRING, STRING) |
Celé číslo | Pokud řetězec STRING začíná s podřetězcem SUBSTRING , pak tato funkce vrací dolní index 1 . V opačném případě tato funkce vrací hodnotu parametru 0 . |
issubstring(SUBSTRING, N, STRING) |
Celé číslo | Vyhledává řetězec STRING od jeho znaku Nth , a to za podřetězec rovnající se řetězci SUBSTRING . Je-li nalezen, vrací tato funkce celočíselný dolní index, na kterém začíná odpovídající podřetězec. V opačném případě tato funkce vrací hodnotu parametru 0 . Není-li parametr N zadán, je tato funkce standardně nastavena na hodnotu 1 . |
issubstring(SUBSTRING, STRING) |
Celé číslo | Prohledává řetězec STRING . Je-li nalezen, vrací tato funkce celočíselný dolní index, na kterém začíná odpovídající podřetězec. V opačném případě tato funkce vrací hodnotu parametru 0 . |
issubstring_count(SUBSTRING, N, STRING) |
Celé číslo | Vrací index výskytu Nth výskytu SUBSTRING v rámci zadaného STRING . Pokud existuje méně než N výskytů SUBSTRING , 0 se vrátí. |
issubstring_lim(SUBSTRING, N, STARTLIM, ENDLIM, STRING) |
Celé číslo | Tato funkce je stejná jako issubstring , ale shoda je omezena na spuštění na STARTLIM a na konci ENDLIM . Omezení STARTLIM nebo ENDLIM mohou být zakázána zadáním hodnoty false pro jeden z argumentů-například issubstring_lim(SUBSTRING, N, false, false,
STRING) je stejné jako issubstring . |
isuppercode(CHAR) |
Logická hodnota | Vrací hodnotu true, pokud CHAR je znak velkého písmene. V opačném případě tato funkce vrací hodnotu parametru 0 . Platnými výrazy jsou například isuppercode(``) a isuppercode(country_name(2)) . |
last(STRING) |
Řetězec | Vrací poslední znak CHAR z STRING (který musí být dlouhý alespoň jeden znak). |
length(STRING) |
Celé číslo | Vrací délku řetězce STRING (to znamená počet znaků v něm). |
locchar(CHAR, N, STRING) |
Celé číslo | Používá se k identifikaci umístění znaků v symbolických polích. Funkce prohledá řetězec STRING pro znak CHAR , spouští vyhledávání na znaku Nth znaku STRING . Tato funkce vrací hodnotu udávající umístění (začínající na N ), kde je znak nalezen. Není-li tento znak nalezen, vrátí tato funkce hodnotu 0. Má-li funkce neplatný offset (N) (například offset, který přesahuje délku řetězce), vrátí tato funkce $null$ . Například, locchar(`n`, 2,
web_page) prohledá pole s názvem web_page pro znak `n` začínající na druhém znaku v hodnotě pole. Chcete-li zapouzdřit zadaný znak, ujistěte se, že jste použili jednoduché zpětné uvozovky. |
locchar_back(CHAR, N, STRING) |
Celé číslo | Podobně jako locchar , s tím rozdílem, že vyhledávání probíhá od znaku Nth od začátku. Například locchar_back(`n`, 9,
web_page) prohledá pole web_page od devátého znaku a posune se zpět směrem ke začátku řetězce. Má-li funkce neplatné posunutí (například offset, který přesahuje délku řetězce), vrátí tato funkce $null$ . V ideálním případě byste měli používat locchar_back ve spojení s funkcí length(<field>) a dynamicky používat délku aktuální hodnoty pole. Například locchar_back(`n`, (length(web_page)), web_page) . |
lowertoupper(CHAR) lowertoupper (STRING) |
CHAR nebo String | Vstup může být buď řetězec nebo znak, který se používá v této funkci k vrácení nové položky stejného typu, s libovolnými malými písmeny převedenými na jejich velká písmena. Všechny platné výrazy jsou například lowertoupper(`a`) , lowertoupper(“My string”) a lowertoupper(field_name(2)) . |
matches |
Logická hodnota | Vrátí true , pokud řetězec odpovídá určenému vzoru. Vzor musí být řetězcový literál; nesmí se jednat o název pole, který obsahuje vzor. Do vzoru můžete zahrnout otazník (? ), aby odpovídal právě jednomu znaku; hvězdička (* ) odpovídá nule nebo více znakům. Chcete-li porovnat literálový otazník nebo hvězdičku (místo použití těchto zástupných znaků), použijte jako řídicí znak zpětné lomítko (\ ). |
replace(SUBSTRING, NEWSUBSTRING, STRING) |
Řetězec | V rámci zadaného parametru STRING nahraďte všechny instance produktu SUBSTRING řetězcem NEWSUBSTRING . |
replicate(COUNT, STRING) |
Řetězec | Vrátí řetězec, který se skládá z původního řetězce zkopírovaného zadaného počtu opakování. |
stripchar(CHAR,STRING) |
Řetězec | Umožňuje vám odebrat uvedené znaky z řetězce nebo pole. Tuto funkci můžete použít například k odebrání přebytečných symbolů, jako jsou například notace měny, od dat k dosažení jednoduchého čísla nebo názvu. Například použití syntaxe stripchar(`$`, 'Cost') vrátí nové pole s odebraným znakem dolaru ze všech hodnot. Chcete-li zapouzdřit zadaný znak, ujistěte se, že jste použili jednoduché zpětné uvozovky. |
skipchar(CHAR, N, STRING) |
Celé číslo | Vyhledává řetězec STRING pro jakýkoliv jiný znak než CHAR , počínaje znakem Nth . Tato funkce vrací celočíselný podřetězec označující bod, ve kterém je nalezen, nebo 0 , pokud každý znak od Nth dále je CHAR . Má-li funkce neplatné posunutí (například offset, který přesahuje délku řetězce), vrátí tato funkce $null$ . locchar se často používá ve spojení s funkcemi skipchar k určení hodnoty N (bod, ve kterém se má začít prohledávat řetězec). Například skipchar(`s`, (locchar(`s`, 1,
"MyString")), "MyString") . |
skipchar_back(CHAR, N, STRING) |
Celé číslo | Podobně jako skipchar , až na to, že vyhledávání probíhá zpětně, počínaje znakem Nth . |
startstring(N, STRING) |
Řetězec | Extrahuje prvních N znaků z uvedeného řetězce. Je-li délka řetězce menší nebo rovna zadané délce, pak se nezmění. |
strmember(CHAR, STRING) |
Celé číslo | Ekvivalentní proměnné locchar(CHAR, 1, STRING) . Vrací celočíselný podřetězec označující bod, v němž se CHAR poprvé vyskytuje, nebo 0 . Má-li funkce neplatné posunutí (například offset, který přesahuje délku řetězce), vrátí tato funkce $null$ . |
subscrs(N, STRING) |
ZNAK | Vrací znak Nth CHAR vstupního řetězce STRING . Tato funkce může být také zapsána v zkrácené formě jako STRING(N) . Například lowertoupper(“name”(1)) je platný výraz. |
substring(N, LEN, STRING) |
Řetězec | Vrací řetězec SUBSTRING , který se skládá ze znaků LEN řetězce STRING začínajících od znaku při dolním indexu N. |
substring_between(N1, N2, STRING) |
Řetězec | Vrací dílčí řetězec STRING , který začíná u dolního indexu N1 a končí indexem N2 . |
textsplit(STRING, N, CHAR) |
Řetězec | textsplit(STRING,N,CHAR) vrací podřetězec mezi výskyty Nth-1 a Nth CHAR . Je-li N 1 , pak vrátí podřetězec od začátku STRING až do, ale ne včetně CHAR . Je-li N-1 posledním výskytem CHAR , vrátí podřetězec od výskytu CHAR Nth-1 až do konce řetězce. |
trim(STRING) |
Řetězec | Odebírá úvodní a koncové znaky mezery z určeného řetězce. |
trimstart(STRING) |
Řetězec | Odebírá úvodní znaky mezery z určeného řetězce. |
trimend(STRING) |
Řetězec | Odebírá koncové znaky mezery z určeného řetězce. |
unicode_char(NUM) |
ZNAK | Vstupem musí být desetinné číslo, nikoli hexadecimální hodnoty. Vrací znak s hodnotou Unicode NUM . |
unicode_value(CHAR) |
Číslo | Vrací hodnotu Unicode CHAR . |
uppertolower(CHAR) uppertolower (STRING) |
CHAR nebo String | Vstup může být řetězec nebo znak a používá se v této funkci k vrácení nové položky stejného typu se všemi velkými písmeny převedenými na jejich malá ekvivalenty. Nezapomeňte zadat řetězce s dvojitými uvozovkami a znaky s jednoduchými uvozovkami. Jednoduché názvy polí by měly být zadány bez uvozovek. |