To jest strona dokumentacji dla Moduł:String
Ten moduł ma na celu zapewnienie dostępu do podstawowych funkcji łańcuchów znakowych.
Większość przedstawionych tutaj funkcji można wywołać z parametrami nazwanymi, parametrami nienazwanymi lub ich mieszaniną. Jeśli używane są nazwane parametry, Mediawiki automatycznie usunie wszelkie początkowe lub końcowe białe znaki z parametru. W zależności od zamierzonego zastosowania może być korzystne zachowanie lub usunięcie takich białych znaków.
Opcje globalne[]
- ignore_errors
- Jeśli ustawione na 'true' lub 1, każdy warunek błędu spowoduje zwrócenie pustego ciągu zamiast komunikatu o błędzie.
- error_category
- Jeśli wystąpi błąd, określa nazwę kategorii, która ma być uwzględniona w komunikacie o błędzie. Domyślna kategoria to Kategoria:Błędy zgłoszone przez Moduł String.
- no_category
- Jeśli ustawione na 'true' lub 1, żadna kategoria nie zostanie dodana w przypadku wygenerowania błędu.
Testy jednostkowe dla tego modułu są dostępne pod adresem wikipedia:Moduł:String/testowane przypadki.
len[]
Ta funkcja zwraca długość ciągu docelowego.
Sposób użycia:
{{#invoke:String|len|target_string}}
LUB
{{#invoke:String|len|s= target_string }}
Parametry:
- s
- Ciąg, którego długość ma zostać zgłoszona
sub[]
- Ta funkcja zwraca pod-łańcuch ciągu docelowego o określonych indeksach.
Sposób użycia:
{{#invoke:String|sub|target_string|start_index|end_index}}
LUB
{{#invoke:String|sub|s= target_string |i= start_index |j= end_index }}
Parametry:
- s
- Ciąg, który ma zwrócić podzbiór
- i
- Pierwszy indeks podciągu do zwrócenia, domyślnie ma wartość 1.
- j
- Ostatni indeks ciągu do zwrócenia, domyślnie jest nim ostatni znak.
Pierwszemu znakowi ciągu przypisywany jest indeks 1. Jeśli i lub j jest wartością ujemną, jest interpretowane tak samo, jak wybieranie znaku przez liczenie od końca ciągu. W związku z tym wartość -1 jest taka sama, jak wybranie ostatniego znaku ciągu.
Jeśli żądane indeksy są poza zakresem dla podanego ciągu, zgłaszany jest błąd.
sublength[]
Ta funkcja implementuje cechy {{Str sub old}} i jest zachowywana w celu utrzymania tych starszych szablonów.
match[]
Ta funkcja zwraca podciąg z ciągu źródłowego, który pasuje do określonego wzorca.
Sposób użycia:
{{#invoke:String|match|source_string|pattern_string|start_index|match_number|plain_flag|nomatch_output}}
LUB
{{#invoke:String|match|s= source_string |pattern= pattern_string |start= start_index|match= match_number|plain= plain_flag |nomatch= nomatch_output }}
Parametry:
- s
- Ciąg do wyszukania
- pattern
- Wzorzec lub ciąg do znalezienia w ciągu
- start
- Indeks w ciągu źródłowym, aby rozpocząć wyszukiwanie. Pierwszy znak łańcucha ma indeks 1. Domyślnie 1.
- match
- W niektórych przypadkach może być możliwe wykonanie wielu dopasowań na jednym ciągu. Określa, które dopasowanie ma zostać zwrócone, gdzie pierwszym dopasowaniem jest dopasowanie = 1. Jeśli określono liczbę ujemną, zwracane jest dopasowanie licząc od ostatniego dopasowania. Stąd match = -1 jest tym samym, co żądanie ostatniego dopasowania. Domyślnie 1.
- plain
- Flaga wskazująca, że wzór należy rozumieć jako zwykły tekst. Domyślnie false.
- nomatch
- Jeśli nie zostanie znalezione dopasowanie, wypisze wartość "nomatch" zamiast błędu.
Jeśli match_number lub start_index są poza zakresem dla ciągu, którego dotyczy zapytanie, ta funkcja wygeneruje błąd. Jeśli nie zostanie znalezione dopasowanie, wygenerowany zostanie również błąd. Jeśli dodamy parametr ignore_errors = true, to błąd zostanie zniesiony, a pusty ciąg zostanie zwrócony w przypadku każdego niepowodzenia.
Aby uzyskać informacje na temat konstruowania wzorców Lua, postaci wyrażeń regularnych, zobacz:
- Lua reference: Patterns (as of version 5.1)
- Scribunto patterns
- Scribunto Unicode string patterns
pos[]
Ta funkcja zwraca pojedynczy znak z ciągu docelowego na pozycji pos.
Sposób użycia:
{{#invoke:String|pos|target_string|index_value}}
LUB
{{#invoke:String|pos|target= target_string |pos= index_value }}
Parametry:
- target
- Ciąg do wyszukania
- pos
- Indeks znaku do zwrócenia
Pierwszy znak ma wartość indeksu 1.
Jeśli zażąda się wartości ujemnej, funkcja ta wybierze znak licząc wstecz od końca łańcucha. Innymi słowy pos = -1 to to samo, co pytanie o ostatni znak.
Żądanie wartości zero lub wartości większej niż długość ciągu zwróci błąd.
find[]
Ta funkcja umożliwia wyszukanie docelowego ciągu lub wzorca w innym ciągu.
Sposób użycia:
{{#invoke:String|find|source_str|target_string|start_index|plain_flag}}
LUB
{{#invoke:String|find|source= source_str |target= target_str |start= start_index|plain= plain_flag }}
Parametry:
- source
- Ciąg do wyszukania
- target
- Ciąg lub wzorzec do znalezienia w źródle
- start
- Indeks w ciągu źródłowym do rozpoczęcia wyszukiwania, domyślna wartość 1
- plain
- Flaga logiczna wskazująca, że cel powinien być rozumiany jako zwykły tekst, a nie jako wyrażenia regularnego Lua, domyślnie jest to true
Ta funkcja zwraca pierwszy indeks >= "start", gdzie "target" można znaleźć w "target". Indeksy zaczynają się od 1. Jeśli "target" nie zostanie znaleziony, funkcja zwróci 0. Jeśli brakuje elementu "source" lub "target" / jest ono puste, ta funkcja również zwróci 0.
Ta funkcja powinna być bezpieczna dla łańcuchów UTF-8.
replace[]
Ta funkcja pozwala zastąpić docelowy ciąg lub wzorzec w innym ciągu.
Sposób użycia:
{{#invoke:String|replace|source_str|pattern_string|replace_string|replacement_count|plain_flag}}
LUB
{{#invoke:String|replace|source= source_string |pattern= pattern_string|replace= replace_string |count= replacement_count |plain= plain_flag }}
Parametry:
- source
- Ciąg do wyszukania
- pattern
- Ciąg lub wzorzec do znalezienia w źródle
- replace
- Tekst zastępczy
- count
- Liczba wystąpień do zastąpienia; domyślnie all
- plain
- Flaga logiczna wskazująca, że wzorzec powinien być rozumiany jako zwykły tekst, a nie jako Wzorzec ustringowy Scribunto (przyjazny dla Unicode wyrażenia regularnego Lua); domyślnie true
rep[]
Powtarza ciąg n razy. Prosta funkcja wyprowadzająca string.rep do szablonów.
Sposób użycia:
{{#invoke:String|rep|source|count}}
Parametry:
- source
- Ciąg do powtórzenia
- count
- Liczba powtórzeń.
Przykład {{#invoke:String|rep|hello|3}}
zwraca hellohellohello