Edge Rewrite
// HTMLRewriter · presentation

This page was redesigned at the edge.

Cloudflare fetched the original article and streamed it through HTMLRewriter to apply an entirely new visual system without rebuilding the source page.

Jump to content

Module talk:String/testcases

Page contents not supported in other languages.
Add topic
From Wikipedia, the free encyclopedia

All 209 tests passed.

test_len

test_len
TestExpectedActual
checkY {{#invoke:String|len| foo }} 5 5
checkY {{#invoke:String|len|s= foo }} 3 3
checkY {{#invoke:String|len|}} 0 0
checkY {{#invoke:String|len|s=}} 0 0
checkY {{#invoke:String|len| }} 3 3
checkY {{#invoke:String|len|最近の更新}} 5 5
checkY {{#invoke:String/sandbox|len| foo }} 5 5
checkY {{#invoke:String/sandbox|len|s= foo }} 3 3
checkY {{#invoke:String/sandbox|len|}} 0 0
checkY {{#invoke:String/sandbox|len|s=}} 0 0
checkY {{#invoke:String/sandbox|len| }} 3 3
checkY {{#invoke:String/sandbox|len|最近の更新}} 5 5

test_sub

test_sub
TestExpectedActual
checkY {{#invoke:String|sub|Lorem ipsum}} Lorem ipsum Lorem ipsum
checkY {{#invoke:String|sub| Lorem ipsum }} Lorem ipsum Lorem ipsum
checkY {{#invoke:String|sub|s= Lorem ipsum }} Lorem ipsum Lorem ipsum
checkY {{#invoke:String|sub|Lorem ipsum|1}} Lorem ipsum Lorem ipsum
checkY {{#invoke:String|sub|Lorem ipsum|2}} orem ipsum orem ipsum
checkY {{#invoke:String|sub|Lorem ipsum|-5}} ipsum ipsum
checkY {{#invoke:String|sub|Lorem ipsum|-1}} m m
checkY {{#invoke:String|sub|Lorem ipsum|11}} m m
checkY {{#invoke:String|sub|Lorem ipsum||11}} Lorem ipsum Lorem ipsum
checkY {{#invoke:String|sub|Lorem ipsum||10}} Lorem ipsu Lorem ipsu
checkY {{#invoke:String|sub|Lorem ipsum||-1}} Lorem ipsum Lorem ipsum
checkY {{#invoke:String|sub|Lorem ipsum||-2}} Lorem ipsu Lorem ipsu
checkY {{#invoke:String|sub|Lorem ipsum||-11}} L L
checkY {{#invoke:String|sub|Lorem ipsum|1|11}} Lorem ipsum Lorem ipsum
checkY {{#invoke:String|sub|Lorem ipsum|2|10}} orem ipsu orem ipsu
checkY {{#invoke:String|sub|Lorem ipsum|1|-1}} Lorem ipsum Lorem ipsum
checkY {{#invoke:String|sub|Lorem ipsum|2|-2}} orem ipsu orem ipsu
checkY {{#invoke:String|sub|Lorem ipsum|7|-5}} i i
checkY {{#invoke:String|sub|s=Lorem ipsum|i=7|j=-5}} i i
checkY {{#invoke:String|sub||no_category=true}} String Module Error: String subset index out of range String Module Error: String subset index out of range
checkY {{#invoke:String|sub|s=|no_category=true}} String Module Error: String subset index out of range String Module Error: String subset index out of range
checkY {{#invoke:String|sub|Lorem ipsum|0|no_category=true}} String Module Error: String subset index out of range String Module Error: String subset index out of range
checkY {{#invoke:String|sub|Lorem ipsum||-12|no_category=true}} String Module Error: String subset index out of range String Module Error: String subset index out of range
checkY {{#invoke:String|sub|Lorem ipsum|7|-6|no_category=true}} String Module Error: String subset indices out of order String Module Error: String subset indices out of order
checkY {{#invoke:String|sub|s=Lorem ipsum|i=11|j=1|no_category=true}} String Module Error: String subset indices out of order String Module Error: String subset indices out of order
checkY {{#invoke:String|sub|s=Lorem ipsum|i=11|j=1|ignore_errors=true}}
checkY {{#invoke:String/sandbox|sub|Lorem ipsum}} Lorem ipsum Lorem ipsum
checkY {{#invoke:String/sandbox|sub| Lorem ipsum }} Lorem ipsum Lorem ipsum
checkY {{#invoke:String/sandbox|sub|s= Lorem ipsum }} Lorem ipsum Lorem ipsum
checkY {{#invoke:String/sandbox|sub|Lorem ipsum|1}} Lorem ipsum Lorem ipsum
checkY {{#invoke:String/sandbox|sub|Lorem ipsum|2}} orem ipsum orem ipsum
checkY {{#invoke:String/sandbox|sub|Lorem ipsum|-5}} ipsum ipsum
checkY {{#invoke:String/sandbox|sub|Lorem ipsum|-1}} m m
checkY {{#invoke:String/sandbox|sub|Lorem ipsum|11}} m m
checkY {{#invoke:String/sandbox|sub|Lorem ipsum||11}} Lorem ipsum Lorem ipsum
checkY {{#invoke:String/sandbox|sub|Lorem ipsum||10}} Lorem ipsu Lorem ipsu
checkY {{#invoke:String/sandbox|sub|Lorem ipsum||-1}} Lorem ipsum Lorem ipsum
checkY {{#invoke:String/sandbox|sub|Lorem ipsum||-2}} Lorem ipsu Lorem ipsu
checkY {{#invoke:String/sandbox|sub|Lorem ipsum||-11}} L L
checkY {{#invoke:String/sandbox|sub|Lorem ipsum|1|11}} Lorem ipsum Lorem ipsum
checkY {{#invoke:String/sandbox|sub|Lorem ipsum|2|10}} orem ipsu orem ipsu
checkY {{#invoke:String/sandbox|sub|Lorem ipsum|1|-1}} Lorem ipsum Lorem ipsum
checkY {{#invoke:String/sandbox|sub|Lorem ipsum|2|-2}} orem ipsu orem ipsu
checkY {{#invoke:String/sandbox|sub|Lorem ipsum|7|-5}} i i
checkY {{#invoke:String/sandbox|sub|s=Lorem ipsum|i=7|j=-5}} i i
checkY {{#invoke:String/sandbox|sub||no_category=true}} String Module Error: String subset index out of range String Module Error: String subset index out of range
checkY {{#invoke:String/sandbox|sub|s=|no_category=true}} String Module Error: String subset index out of range String Module Error: String subset index out of range
checkY {{#invoke:String/sandbox|sub|Lorem ipsum|0|no_category=true}} String Module Error: String subset index out of range String Module Error: String subset index out of range
checkY {{#invoke:String/sandbox|sub|Lorem ipsum||-12|no_category=true}} String Module Error: String subset index out of range String Module Error: String subset index out of range
checkY {{#invoke:String/sandbox|sub|Lorem ipsum|7|-6|no_category=true}} String Module Error: String subset indices out of order String Module Error: String subset indices out of order
checkY {{#invoke:String/sandbox|sub|s=Lorem ipsum|i=11|j=1|no_category=true}} String Module Error: String subset indices out of order String Module Error: String subset indices out of order
checkY {{#invoke:String/sandbox|sub|s=Lorem ipsum|i=11|j=1|ignore_errors=true}}

test_sublength

test_sublength
TestExpectedActual
checkY {{#invoke:String|sublength|s=abcde|i=0|len=5}} abcde abcde
checkY {{#invoke:String|sublength|s=abcde|i=0|len=1}} a a
checkY {{#invoke:String|sublength|s=abcde|i=1|len=2}} bc bc
checkY {{#invoke:String|sublength|s=abcde|i=-3|len=2}} de de
checkY {{#invoke:String|sublength|s=abcde|i=3|len=-2}}
checkY {{#invoke:String|sublength|s=abcde|i=1|len=0}}
checkY {{#invoke:String|sublength|s=abcde|i=0|len=0}}
checkY {{#invoke:String|sublength|s=|i=1|len=1}}
checkY {{#invoke:String|sublength|s=abcde|i=0|len=99}} abcde abcde
checkY {{#invoke:String/sandbox|sublength|s=abcde|i=0|len=5}} abcde abcde
checkY {{#invoke:String/sandbox|sublength|s=abcde|i=0|len=1}} a a
checkY {{#invoke:String/sandbox|sublength|s=abcde|i=1|len=2}} bc bc
checkY {{#invoke:String/sandbox|sublength|s=abcde|i=-3|len=2}} de de
checkY {{#invoke:String/sandbox|sublength|s=abcde|i=3|len=-2}}
checkY {{#invoke:String/sandbox|sublength|s=abcde|i=1|len=0}}
checkY {{#invoke:String/sandbox|sublength|s=abcde|i=0|len=0}}
checkY {{#invoke:String/sandbox|sublength|s=|i=1|len=1}}
checkY {{#invoke:String/sandbox|sublength|s=abcde|i=0|len=99}} abcde abcde

test_replace

test_replace
TestExpectedActual
checkY {{#invoke:String|replace|1.1.1.1|.|/}} 1/1/1/1 1/1/1/1
checkY {{#invoke:String|replace|source=1.1.1.1|pattern=.|replace=/|count=2}} 1/1/1.1 1/1/1.1
checkY {{#invoke:String|replace|alpha (beta)| (| gamma (}} alpha gamma (beta) alpha gamma (beta)
checkY {{#invoke:String|replace|Dog (cat)|%s%(.*%)||plain=false}} Dog Dog
checkY {{#invoke:String/sandbox|replace|1.1.1.1|.|/}} 1/1/1/1 1/1/1/1
checkY {{#invoke:String/sandbox|replace|source=1.1.1.1|pattern=.|replace=/|count=2}} 1/1/1.1 1/1/1.1
checkY {{#invoke:String/sandbox|replace|alpha (beta)| (| gamma (}} alpha gamma (beta) alpha gamma (beta)
checkY {{#invoke:String/sandbox|replace|Dog (cat)|%s%(.*%)||plain=false}} Dog Dog

test_match

test_match
TestExpectedActual
checkY {{#invoke:String|match|dog (cat)|%((%a-)%)}} cat cat
checkY {{#invoke:String|match|dog (cat) (canary) (fish)|%((%a-)%)||-1}} fish fish
checkY {{#invoke:String|match|dog (cat) (canary) (fish)|%((%a-)%)||2}} canary canary
checkY {{#invoke:String|match|dog (cat) (canary) (fish)|%((%a-)%)|6|1}} canary canary
checkY {{#invoke:String|match|dog (cat) (canary) (fish)|%((%a-)%)|6|2}} fish fish
checkY {{#invoke:String|match|dog (cat)|%((%a-)%)||2|no_category=true}} String Module Error: Match not found String Module Error: Match not found
checkY {{#invoke:String|match|dog (cat)|%((%a-)%)||2|ignore_errors=true}}
checkY {{#invoke:String/sandbox|match|dog (cat)|%((%a-)%)}} cat cat
checkY {{#invoke:String/sandbox|match|dog (cat) (canary) (fish)|%((%a-)%)||-1}} fish fish
checkY {{#invoke:String/sandbox|match|dog (cat) (canary) (fish)|%((%a-)%)||2}} canary canary
checkY {{#invoke:String/sandbox|match|dog (cat) (canary) (fish)|%((%a-)%)|6|1}} canary canary
checkY {{#invoke:String/sandbox|match|dog (cat) (canary) (fish)|%((%a-)%)|6|2}} fish fish
checkY {{#invoke:String/sandbox|match|dog (cat)|%((%a-)%)||2|no_category=true}} String Module Error: Match not found String Module Error: Match not found
checkY {{#invoke:String/sandbox|match|dog (cat)|%((%a-)%)||2|ignore_errors=true}}

test_match_reverse

test_match_reverse
TestExpectedActual
checkY {{#invoke:String|match|a (1) (2) (3) (4) (5) (6) (a)|%((%d)%)||-1}} 6 6
checkY {{#invoke:String|match|a (1) (2) (3) (4) (5) (6) (a)|%((%d)%)||-2}} 5 5
checkY {{#invoke:String|match|a (1) (2) (3) (4) (5) (6) (a)|%((%d)%)||-4}} 3 3
checkY {{#invoke:String|match|a (1) (2) (3) (4) (5) (6) (a)|%((%d)%)||-5}} 2 2
checkY {{#invoke:String|match|a (1) (2) (3) (4) (5) (6) (a)|%((%d)%)||-6}} 1 1
checkY {{#invoke:String|match|a (1) (2) (3) (4) (5) (6) (a)|%((%d)%)||-7|no_category=true}} String Module Error: Match not found String Module Error: Match not found
checkY {{#invoke:String/sandbox|match|a (1) (2) (3) (4) (5) (6) (a)|%((%d)%)||-1}} 6 6
checkY {{#invoke:String/sandbox|match|a (1) (2) (3) (4) (5) (6) (a)|%((%d)%)||-2}} 5 5
checkY {{#invoke:String/sandbox|match|a (1) (2) (3) (4) (5) (6) (a)|%((%d)%)||-4}} 3 3
checkY {{#invoke:String/sandbox|match|a (1) (2) (3) (4) (5) (6) (a)|%((%d)%)||-5}} 2 2
checkY {{#invoke:String/sandbox|match|a (1) (2) (3) (4) (5) (6) (a)|%((%d)%)||-6}} 1 1
checkY {{#invoke:String/sandbox|match|a (1) (2) (3) (4) (5) (6) (a)|%((%d)%)||-7|no_category=true}} String Module Error: Match not found String Module Error: Match not found

test_pos

test_pos
TestExpectedActual
checkY {{#invoke:String|pos|abc|1}} a a
checkY {{#invoke:String|pos|abc|3}} c c
checkY {{#invoke:String|pos|abc|-1}} c c
checkY {{#invoke:String|pos|abc|-3}} a a
checkY {{#invoke:String|pos|target=abc|pos=2}} b b
checkY {{#invoke:String|pos|abc|-4}} [[Category:Errors reported by Module String]]<strong class="error">String Module Error: String index out of range</strong> [[Category:Errors reported by Module String]]<strong class="error">String Module Error: String index out of range</strong>
checkY {{#invoke:String|pos|abc|4}} [[Category:Errors reported by Module String]]<strong class="error">String Module Error: String index out of range</strong> [[Category:Errors reported by Module String]]<strong class="error">String Module Error: String index out of range</strong>
checkY {{#invoke:String|pos|abc|0}} [[Category:Errors reported by Module String]]<strong class="error">String Module Error: String index out of range</strong> [[Category:Errors reported by Module String]]<strong class="error">String Module Error: String index out of range</strong>
checkY {{#invoke:String|pos|abc|}} [[Category:Errors reported by Module String]]<strong class="error">String Module Error: String index out of range</strong> [[Category:Errors reported by Module String]]<strong class="error">String Module Error: String index out of range</strong>
checkY {{#invoke:String|pos|}} [[Category:Errors reported by Module String]]<strong class="error">String Module Error: String index out of range</strong> [[Category:Errors reported by Module String]]<strong class="error">String Module Error: String index out of range</strong>
checkY {{#invoke:String/sandbox|pos|abc|1}} a a
checkY {{#invoke:String/sandbox|pos|abc|3}} c c
checkY {{#invoke:String/sandbox|pos|abc|-1}} c c
checkY {{#invoke:String/sandbox|pos|abc|-3}} a a
checkY {{#invoke:String/sandbox|pos|target=abc|pos=2}} b b
checkY {{#invoke:String/sandbox|pos|abc|-4}} [[Category:Errors reported by Module String]]<strong class="error">String Module Error: String index out of range</strong> [[Category:Errors reported by Module String]]<strong class="error">String Module Error: String index out of range</strong>
checkY {{#invoke:String/sandbox|pos|abc|4}} [[Category:Errors reported by Module String]]<strong class="error">String Module Error: String index out of range</strong> [[Category:Errors reported by Module String]]<strong class="error">String Module Error: String index out of range</strong>
checkY {{#invoke:String/sandbox|pos|abc|0}} [[Category:Errors reported by Module String]]<strong class="error">String Module Error: String index out of range</strong> [[Category:Errors reported by Module String]]<strong class="error">String Module Error: String index out of range</strong>
checkY {{#invoke:String/sandbox|pos|abc|}} [[Category:Errors reported by Module String]]<strong class="error">String Module Error: String index out of range</strong> [[Category:Errors reported by Module String]]<strong class="error">String Module Error: String index out of range</strong>
checkY {{#invoke:String/sandbox|pos|}} [[Category:Errors reported by Module String]]<strong class="error">String Module Error: String index out of range</strong> [[Category:Errors reported by Module String]]<strong class="error">String Module Error: String index out of range</strong>

test_find

test_find
TestExpectedActual
checkY {{#invoke:String/sandbox|find|}} 0 0
checkY {{#invoke:String/sandbox|find|source=}} 0 0
checkY {{#invoke:String/sandbox|find|source=|target=}} 0 0
checkY {{#invoke:String/sandbox|find|source=|target=Bob}} 0 0
checkY {{#invoke:String/sandbox|find|Bob|Joe}} 0 0
checkY {{#invoke:String/sandbox|find|Bob|b}} 3 3
checkY {{#invoke:String/sandbox|find|Bob Joe|oe}} 6 6
checkY {{#invoke:String/sandbox|find|source= Bob |o}} 2 2
checkY {{#invoke:String/sandbox|find| Bob |o}} 3 3
checkY {{#invoke:String/sandbox|find|높지만 급격히|}} 3 3
checkY {{#invoke:String/sandbox|find|source=BAAAB|target=%w|plain=false}} 1 1
checkY {{#invoke:String/sandbox|find|source=BAAAB|target=%w|start=3|plain=false}} 3 3
checkY {{#invoke:String/sandbox|find|source=BAAAB|target=(%w)%1|plain=false}} 2 2

test_rep

test_rep
TestExpectedActual
checkY {{#invoke:String|rep|abc|1}} abc abc
checkY {{#invoke:String|rep|a b|7}} a ba ba ba ba ba ba b a ba ba ba ba ba ba b
checkY {{#invoke:String|rep|bla|glug|no_category=true}} String Module Error: function rep expects a number as second parameter, received "glug" String Module Error: function rep expects a number as second parameter, received "glug"
checkY {{#invoke:String|rep|bla|glug|ignore_errors=true}}
checkY {{#invoke:String|rep|àèò|3}} àèòàèòàèò àèòàèòàèò
checkY {{#invoke:String|rep|abc|0}}
checkY {{#invoke:String|rep|abc|-1}}
checkY {{#invoke:String/sandbox|rep|abc|1}} abc abc
checkY {{#invoke:String/sandbox|rep|a b|7}} a ba ba ba ba ba ba b a ba ba ba ba ba ba b
checkY {{#invoke:String/sandbox|rep|bla|glug|no_category=true}} String Module Error: function rep expects a number as second parameter, received "glug" String Module Error: function rep expects a number as second parameter, received "glug"
checkY {{#invoke:String/sandbox|rep|bla|glug|ignore_errors=true}}
checkY {{#invoke:String/sandbox|rep|àèò|3}} àèòàèòàèò àèòàèòàèò
checkY {{#invoke:String/sandbox|rep|abc|0}}
checkY {{#invoke:String/sandbox|rep|abc|-1}}

test_escapePattern

test_escapePattern
TestExpectedActual
checkY {{#invoke:String/sandbox|escapePattern|foo}} foo foo
checkY {{#invoke:String/sandbox|escapePattern|A.D.}} A%.D%. A%.D%.
checkY {{#invoke:String/sandbox|escapePattern|0123}} 0123 0123
checkY {{#invoke:String/sandbox|escapePattern|^}} %^ %^
checkY {{#invoke:String/sandbox|escapePattern|$}} %$ %$
checkY {{#invoke:String/sandbox|escapePattern|(}} %( %(
checkY {{#invoke:String/sandbox|escapePattern|)}} %) %)
checkY {{#invoke:String/sandbox|escapePattern|%}} %% %%
checkY {{#invoke:String/sandbox|escapePattern|.}} %. %.
checkY {{#invoke:String/sandbox|escapePattern|[}} %[ %[
checkY {{#invoke:String/sandbox|escapePattern|]}} %] %]
checkY {{#invoke:String/sandbox|escapePattern|*}} %* %*
checkY {{#invoke:String/sandbox|escapePattern|+}} %+ %+
checkY {{#invoke:String/sandbox|escapePattern|-}} %- %-
checkY {{#invoke:String/sandbox|escapePattern|?}} %? %?
checkY {{#invoke:String/sandbox|escapePattern|!}} ! !
checkY {{#invoke:String/sandbox|escapePattern|"}} " "
checkY {{#invoke:String/sandbox|escapePattern|&}} & &
checkY {{#invoke:String/sandbox|escapePattern|'}} ' '
checkY {{#invoke:String/sandbox|escapePattern|{}} { {
checkY {{#invoke:String/sandbox|escapePattern|}}} } }
checkY {{#invoke:String/sandbox|escapePattern|`}} ` `
checkY {{#invoke:String/sandbox|escapePattern|@}} @ @
checkY {{#invoke:String/sandbox|escapePattern|,}} , ,
checkY {{#invoke:String/sandbox|escapePattern|<}} < <
checkY {{#invoke:String/sandbox|escapePattern|>}} > >
checkY {{#invoke:String/sandbox|escapePattern|/}} / /
checkY {{#invoke:String/sandbox|escapePattern|_}} _ _
checkY {{#invoke:String/sandbox|escapePattern|\}} \ \
checkY {{#invoke:String/sandbox|escapePattern|~}} ~ ~
checkY {{#invoke:String/sandbox|escapePattern| }}
checkY {{#invoke:String/sandbox|escapePattern|}}
checkY {{#invoke:String/sandbox|escapePattern|x#}} x# x#
checkY {{#invoke:String/sandbox|escapePattern|x;}} x; x;
checkY {{#invoke:String/sandbox|escapePattern|x:}} x: x:
checkY {{#invoke:String/sandbox|escapePattern|{{!}}}}
checkY {{#invoke:String/sandbox|escapePattern|1==}} = =
checkY {{#invoke:String/sandbox|escapePattern|no_category=true}} String Module Error: No pattern string specified String Module Error: No pattern string specified

test_join

test_join
TestExpectedActual
checkY {{#invoke:String/sandbox|join|}}
checkY {{#invoke:String/sandbox|join|X}}
checkY {{#invoke:String/sandbox|join|X|a}} a a
checkY {{#invoke:String/sandbox|join|X|a|b}} aXb aXb
checkY {{#invoke:String/sandbox|join|X|a|b|c}} aXbXc aXbXc
checkY {{#invoke:String/sandbox|join|X|a|b|c|d}} aXbXcXd aXbXcXd
checkY {{#invoke:String/sandbox|join|X|a|b||d}} aXbXd aXbXd
checkY {{#invoke:String/sandbox|join|X|a|b|c|d|e|f|g|h|i|j|k|l|m|n|o|p|q|r|s|t|u|v|w|x|y|z}} aXbXcXdXeXfXgXhXiXjXkXlXmXnXoXpXqXrXsXtXuXvXwXxXyXz aXbXcXdXeXfXgXhXiXjXkXlXmXnXoXpXqXrXsXtXuXvXwXxXyXz