Användare:Magnus sine Cognomen/mall/sträng
Användare:Magnus sine Cognomen/mall/sträng – Implementerar Modul:String
som mall, samt ytterligare några textfunktioner.
Användning
[redigera | redigera wikitext]{{Sträng|funktion|...argument...}}
{{Sträng|längd|text}}
{{Sträng|del|text|från|till}}
{{Sträng|matcha|text|söksträng|...}}
{{Sträng|är numerisk|text}}
{{Sträng|om numerisk|text|då|annars}}
{{Sträng|numeriskt|text}}
{{Sträng|trimma|text}}
Att notera
[redigera | redigera wikitext]- Denna mall bygger på
Modul:String
och dess komplement,Modul:String2
ochModul:String3
som de såg ut när den senast uppdaterades den 14 juni 2022. Vid eventuella senare förändringar i dessa moduler, som inte är bakåtkompatibla, kan denna mall behöva uppdateras. Kod som använder denna mall riskerar vid ett sådant fall att ge oförväntade, och eventuellt felaktiga, resultat. - Vissa av de funktioner som erbjuds av denna mall finns också som egna mallar. När detta är känt finns det en länk i funktionsbeskrivningen.
Beskrivning
[redigera | redigera wikitext]Denna mall är huvudsakligen avsedd för att användas av andra mallar, eller där magiska ord, parserfunktioner eller likvärdigt ger variabla textsträngar. Den var tänkt som en renodlad implementering av Modul:String, men har fått en något utökad mängd funktioner. Den implementerar nu funktioner från Modul:String, Modul:String2 och Modul:String3, samt ytterligare några funktioner.
Mallen är tänkt som en svenskspråkig mall, men eftersom Modul:Strings funktioner har vissa etablerade namn så fungerar även dessa namn som funktionsnamn. Inom programmering är det också vanligt med vissa funktionsnamn (beroende på programmeringssspråk) för de övriga (eller liknande) funktionerna. De har i sådana fall också fått ett alias.
Märkligt nog är funktionsnamnen inte skifteslägeskänsliga, eller påverkade av inledande eller avslutande mellanslag, men funktionernas argument kan vara det.
Alla storlekar, positioner, och andra numeriska värden i den här mallen är angivna i tecken, inte i byte eller något annat. Det första tecknet i alla strängar har position 1. Det sista tecknets position är samma som strängens längd. Negativa tal för positioner anger som regel position räknat från slutet av strängen, det vill säga från höger i texten, så -1
anger det sista tecknet. Notera också att slutparametrar inkluderar tecknet, så {{Sträng|del|Min sträng|1|1}}
returnerar det första tecknet ("M"), och {{Sträng|del|Min sträng|-1|-1}}
returnerar det sista ("g").
Funktioner
[redigera | redigera wikitext]Funktioner från Modul:String
[redigera | redigera wikitext]längd – len
[redigera | redigera wikitext]{{Sträng|längd|text}}
- Beskrivning
- Beräknar längden i tecken (inte i byte) på den angivna textsträngen, inklusive blanksteg.
- Argument
text
– Sträng som längden beräknas på.
- Returnerar
- Beräknad längd.
- Alternativ kod
{{#invoke:String|len|text|}}
del – sub
[redigera | redigera wikitext]{{Sträng|funktion|text|startposition|slutposition}}
- Beskrivning
- Returnerar en delsträng av första argumentet, där delsträngen anges av start- och slutposition i tecken. Negativa värden räknar från slutet av strängen.
- Argument
text
– Sträng som innehåller önskad delsträngstartposition
ellerförsta = startposition
– Ej obligatorisk – Anger vilket tecken som delsträngen startar på. Om värdet utelämnas antas värdet 1, d.v.s. från början av strängen.slutposition
ellersista = slutposition
– Ej obligatorisk – Anger vilket tecken som delsträngen slutar på. Om värdet utelämnas antas resten av strängen.längd = längd
– Alternativt sätt att ange slutposition. Delsträngens sista tecken beräknas utifrån önskvärd längd på delsträngen.
- Returnerar
- Begärd delsträng i första argumentet.
- Exempel
{{Sträng|del|100px|1|-3}}
→ 100{{Sträng|del|100px|1|3}}
→ 100- Alternativa mallar
- Den äldre
{{Str sub}}
har eventuellt haft en liknande funktion, men verkar inte fungera. Notera att{{Sub}}
inte har något med delsträngar att göra. - Alternativ kod
{{#invoke:String|sub|text|startposition|slutposition}}</nowiki>
matcha – match
[redigera | redigera wikitext]{{#invoke:String|match|source_string|pattern_string|start_index|match_number|plain_flag|nomatch_output}}
{{Sträng|funktion|text|söksträng|startposition|slutposition}}
{{Sträng|funktion|arg1|arg2|arg3|arg4|arg5|arg6}}
- Beskrivning
- Argument
argument
ellerparameter = argument
–argument
ellerparameter = argument
–argument
ellerparameter = argument
–argument
ellerparameter = argument
–argument
ellerparameter = argument
–argument
ellerparameter = argument
–
- Returnerar
- Alternativa mallar
{{mallnamn}}
- Alternativ kod
{{}}
Funktioner från Modul:String2
[redigera | redigera wikitext]Funktioner från Modul:String3
[redigera | redigera wikitext]Funktioner som inte finns i String
-modulerna
[redigera | redigera wikitext]är numerisk – isnum
[redigera | redigera wikitext]{{Sträng|är numerisk|text}}
- Alternativa funktionsnamn
isnum
- Beskrivning
- Kontrollerar om
text
är ett värde som kan beräknas i{{#expr: text}}
. Utformad för test med{{#if: ...}}
. - Argument
text
– Värdet som utvärderas
- Returnerar
- Den tomma strängen om argument saknas eller inte är numeriskt, argumentet om det är numeriskt.
om numerisk – ifnum
[redigera | redigera wikitext]{{Sträng|om numerisk|text|om sant|om falskt}}
- Beskrivning
- Exakt det samma som
{{#if: {{sträng|är numerisk|text}} |om sant|om falskt}}
- Argument
text
– Argument som utvärderasom sant
– Returnerat värde om utvärderingen blir sann.om falskt
– Returnerat värde om utvärderingen inte blir sann, inklusive om argument som skall utvärderas saknas eller är den tomma strängen
- Returnerar
- Argument 2 om argument 1 är numeriskt, annars argument 3
numeriskt – numerisk – tonum – tonumber
[redigera | redigera wikitext]{{Sträng|numeriskt|text}}
- Beskrivning
- Omvandlar ett argument till ett numeriskt värde. Vid icke-numeriska värden returneras 0.
Exakt samma sak som{{#if: {{Sträng|om numerisk|text}} |{{#expr: text }}|0}}
- Argument
text
– Text som skall omvandlas
- Returnerar
- Det numeriska värdet av text om det finns, annars 0 (numeriskt noll).
trimma, trim
[redigera | redigera wikitext]{{Sträng|trimma|text}}
- Beskrivning
- Tar bort inledande och avslutande mellanslag, radbrytningar och eventuella tabbar.
- Argument
text
– Text som ska trimmas.
- Returnerar
- Det trimmade värdet av argument 1.
- Alternativa mallar
{{Str trim}}
- Alternativ kod
{{#if: 1 | text }}