Modul:String/Dokumentace
Převzato a přeloženo z anglické Wikipedie, dokumentaci vizte na en:Module:String.
Tento modul poskytuje přístup k základním operacím s řetězci.
Většinu zde uvedených funkcí lze zadat buď s pojmenovanými parametry, s nepojmenovanými parametry, nebo kombinace obojího. Pokud jsou použity pojmenované parametry, MediaWiki automaticky odstraní počáteční či koncové mezery.
Globální možnosti
[editovat zdroj]ignore_errors
: Pokud je nastavena na 'true' nebo 1, nebude vypsaná chybová zprávaerror_category
: Pokud dojde k chybě, bude stránka kategorizována. Výchozí kategorie je Kategorie:Chyby hlášené Modulem String.no_category
: Pokud je nastavena na 'true' nebo 1, kategorie nebude při chybě přidána.
len
[editovat zdroj]Funkce vrací délku řetězce.
Použití:
{{#invoke:String|len|vstupní řetězec}}
NEBO
{{#invoke:String|len|s= vstupní řetězec }}
Parametry:
- s
- řetězec, jehož délku zjišťujeme
sub
[editovat zdroj]- Vrací část řetězce podle zadaných parametrů.
Použití:
{{#invoke:String|sub|vstupní řetězec|začátek|konec}}
NEBO
{{#invoke:String|sub|s= vstupní řetězec |i= začátek |j= konec }}
Parametry:
- s
- řetězec, který chceme zkrátit
- i
- pozice začátku, výchozí 1.
- j
- pozice konce, výchozí poslední znak.
První znak řetězce je na pozici 1. Pokud je i nebo j záporné, počítá se od konce řetězce. -1 je poslední znak.
Pokud jsou zadané pozice mimo rozsah, je hlášena chyba
match
[editovat zdroj]Funkce vrací část řetězce odpovídající zadané šabloně.
Použití:
{{#invoke:String|match|vstupní řetězec|předloha|index začátku|číslo shodného řetězce|nepoužít regex|výstup bez nálezu}}
NEBO
{{#invoke:String|match|s= vstupní řetězec |pattern= předloha |start= index začátku |match= číslo shodného řetězce |plain= nepoužít regex |nomatch= výstup bez nálezu }}
Parametry:
- s
- vstupní řetězec
- pattern
- šablona nebo řetězec pro hledání
- start
- Index, od jaké pozice hledat. Výchozí je 1
- match
- V některých případech vyhoví více míst v řetězci. Tento parametr specifikuje, který z nich vrátit, první je číslo 1. Pokud je číslo záporné, je uvažován výskyt od konce. Výchozí je 1.
- plain
- příznak, který označuje, zda předlohu považovat za čistý text. Výchozí je false
- nomatch
- pokud není řetězec nalezen, vrací tuto hodnotu
Informace a syntaxe Lua, formy regexů:
pos
[editovat zdroj]Funkce vrací znak na zadané pozici řetězce.
Použití:
{{#invoke:String|pos|vstupní řetězec|pozice}}
NEBO
{{#invoke:String|pos|target= vstupní řetězec |pos= pozice }}
Parametry:
- target
- vstupní řetězec
- pos
- pozice hledaného znaku
První znak je na pozici 1.
Záporná čísla označují pozici od konce řetězce, poslední znak je na pozici -1.
Pozice 0 nebo větší, než délka řetězce, vrací chybu.
str_find
[editovat zdroj]Tato funkce je volána šablonou {{Najít}}
a existuje za účelem podpory již existujících šablon, ale NENÍ DOPORUČENA pro použití v nově psaném kódu – ten by měl místo toho využívat funkci "find".
Ze vstupního řetězce "source" vrací nejnižší index, kde začíná shoda s "target". Indexování začíná od 1 a funkce vrátí -1 pokud shoda nebyla nalezena.
Důležitá poznámka: Pokud je řetězec "target" prázdný nebo chybí, funkce i tak vrátí hodnotu "1", což je obecně neočekávané chování, se kterým se musí počítat.
find
[editovat zdroj]Tato funkce umožňuje vyhledávat shodu s řetězcem nebo regulárním výrazem v jiném řetězci.
Použití:
{{#invoke:String|find|výchozí řetězec|cílový řetězec|začátek|nepoužít regex}}
NEBO
{{#invoke:String|find|source= výchozí řetězec |target= cílový řetězec |start= začátek |plain= nepoužít regex }}
Parametry:
- source
- Řetězec k prohledání
- target
- Řetězec NEBO regulární výraz k nalezení ve zdrojovém řetězci
- start
- Index zdrojového řetězce od kterého začít prohledávat, výchozí je 1
- plain
- Logická hodnota, zda má být parametr "target" interpretován jako prostý text (pro true; výchozí), v opačném případě jako regulární výraz
Tato funkce vrací první index >= "start", který je začátkem shody s "target" uvnitř "source". Indexování začíná od 1. Pokud není hledaný řetězec nalezen, funkce vrátí hodnotu 0. Pokud jsou prázdné nebo nejsou uvedeny parametry "source" NEBO "target", funkce také vrátí 0.
Funkce by měla bez problémů podporovat UTF-8 znaky.
replace
[editovat zdroj]Tato funkce umožňuje nahradit určitý řetězec NEBO regulární výraz v jiném řetězci.
Použití:
{{#invoke:String|replace|zdrojový řetězec|hledaný řetězec nebo regulární výraz|řetězec k nahrazení hledaného|počet nahrazení|hledat jako prostý text?}}
NEBO
{{#invoke:String|replace|source= zdrojový řetězec |pattern= hledaný řetězec nebo regulární výraz|replace= řetězec k nahrazení hledaného |count= počet nahrazení |plain= hledat jako prostý text? }}
Parametry:
- source
- Zdrojový řetězec k prohledání
- pattern
- Hledaný řetězec NEBO regulární výraz ve zdrojovém řetězci
- replace
- Řetězec, kterým má být nahrazen hledaný
- count
- Maximální počet výskytů k nahrazení; ve výchozím stavu nahradí všechny
- plain
- Logická hodnota, zda má být parametr "target" interpretován jako prostý text (pro true; výchozí), v opačném případě jako Scribunto ustring pattern (regulární výraz ve stylu programovacího jazyku Lua podporující Unicode)
rep
[editovat zdroj]Opakuje řetězec n-krát. Použití:
{{#invoke:String|rep|zdroj|počet}}
Parametry:
- source
- Řetězec k opakování
- count
- Počet opakování
Např. {{#invoke:String|rep|ahoj|3}}
vypíše ahojahojahoj
listify
[editovat zdroj]Přepíše text v řádcích na seznam. Použití:
{{#invoke:String|listify|výchozí řetězec}}
Parametry:
- výchozí řetězec
- text k převedení na seznam
Příklad
{{#invoke:String|listify|já ty}}
dá
- já
- ty
delistify
[editovat zdroj]Přepíše seznam na řetězce oddělené mezerou. Použití:
{{#invoke:String|delistify|výchozí řetězec}}
Parametry:
- výchozí řetězec
- seznam k převedení na text
Příklad
{{#invoke:String|delistify|# já * ty ** on *# ona #* ono ## my}}
dá
já
ty
on
ona
ono
my