Přeskočit na obsah

Modul:String/Dokumentace

Z Wikipedie, otevřené encyklopedie
(rozdíl) ← Starší revize | zobrazit aktuální verzi (rozdíl) | Novější revize → (rozdíl)

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áva
  • error_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.

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
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

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ů:

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.

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.

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)

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

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}}


  • 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}}


já ty on ona ono my