Vikipedio:Lua/Moduloj/Expr/eo
Ŝablona programado | Diskutoj | Lua | Testoj | Subpaĝoj | |||
---|---|---|---|---|---|---|---|
Modulo | Esperanto | English
|
Modulo: | Dokumentado |
Expr
– Modulo kun funkcioj por esprimoj aldone al tiuj de la parsilaj funkcioj #expr
ofertataj ebloj.
La funkciorezultoj estas destinitaj por tio, esti uzataj kiel termoj ene de aliaj kalkuloj. Ili tial ne havas eblon komuniki erarojn per mesaĝoj aŭ zorgigaj kategorioj.
Funkcioj por ŝablonoj
[redakti fonton]La normaj funkcioj adresiĝas al #invoke
kaj ĝiaj parametroj. Whitespace (do spacoj aŭ linisaltoj) antaŭ kaj post la valoroj estas ignorataj.
- average
- Kalkuli averaĝon
- 1 – Unua nombro
- 2 – Dua nombro
- parse – (nedeviga) nombroformato de la enigoj
- 3 – (nedeviga) Pli nombro
- 4 ktp. – (nedeviga) Pliaj nombroj, beliebig viele
- La averaĝo estas ĉiam minimume
0
kaj nevalidaj valoroj estas ignorataj. - base62
- Kodigo kaj malkodigo laŭ Base62.
- 1 – prilaborota valoro
- 2 – (nedeviga)
D2B
por dekuma-al-base62; defaŭlto: base62-al-dekuma
- crossTotal
- Kalkuli krucsumon
- 1 – Pozitiva entjero, nur ciferoj (minusa signo kaj postkomaj ciferoj estas ignorataj)
0
se nevalida.- decimal2minsec
- Konverti koordinatan valoron el decimala prezento al gradoj-minutoj-sekundoj
- 1 – Dekuma nombro
- 2 – (nedeviga) Nombro de la postkomaj ciferoj de la sekundoj (defaŭlto: neniu)
- parse – (nedeviga) nombroformato de la dekuma nombro
- Rezulto: Protektita je linisalto
<span>
-elemento kun grado, minutoj, sekundoj, alie0
- figure
- Kontrolu nombron je valideco kaj eventuale konverti
- 1 – Nombro
- parse – (nedeviga) nombroformato
- expr – (nedeviga)
1
– Permesu kalkulesprimon laŭ la reguloj de la analiza funkcio#expr
- set – (nedeviga) Nombra gamo; Kondiĉo devas esti plenumita
R
– (defaŭlto) Reala nombro (do ajna)R+
– Nombro pli granda ol aŭ egala al nul; do ne-negativaR-
– Nombro pli malgranda aŭ egala al nu; do ne-pozitivaZ
– Entjero (laŭvalore)N
– Natura nombro inklude nulo; do ne-negativaZ+
– identaN
Z-
– Entjero pli malgranda aŭ egala al nul; do ne-pozitiva
- nenio se nevalida
- max
- Determini maksimumon el aro de nombroj.
- Ĉiuj nenomitaj parametroj estas uzataj por la kalkulo.
- Parametraj valoroj povas esti malplenaj aŭ enhavi esprimojn, kiuj estas analizeblaj per
#expr
. - Estas akceptata kaj la kutima minusa anstataŭa signo streketo-minuso (U+002D) kaj la tipografia minus-signo (U+2212) (vidu malsupre).
- Opcioj eblas en nomitaj parametroj:
- Parametraj valoroj povas esti malplenaj aŭ enhavi esprimojn, kiuj estas analizeblaj per
- La redona valoro estas malplena signoĉeno („nenio“),se neniu parametra valoro aŭ nur malplenaj valoroj estis donitaj; ankaŭ erarmesaĝo por nevalida
#expr
povas aperi. Alie la kalkulita nombro en la specifita aranĝo. - min
- Determini minimumon; alie ekzakte analogia al max.
- minsec2decimal
- Transkalkulas koordinatan valoron el grado-minutoj-sekundoj al dekumo
- 1 – Grado
- 2 – (nedeviga) Minutoj
- 3 – (nedeviga) Sekundoj
- 4 – (nedeviga) Libero por ĉieldirekto
- parse – (nedeviga) nombroformato de enigoj
0
se nevalida.- modulo
- Modulo
- 1 – nombrovaloro (dividato)
- 2 – Ganzwert (bazo, dividanto, rilata valoro) Nulo ne permesata
- 3 – (nedeviga) nombroformato de enigoj
0
se nevalida.- percent
- Kalkulas procentaĵon el procenta valoro kaj baza valoro
- 1 – ono
- 2 – baza valoro (bazo, rilata valoro, 100 %) Nulo ne permesata
- 3 – (nedeviga) nombro de postkomaj ciferoj (defaŭlto: neniu)
- 4 – (nedeviga) konservi fermajn nulojn en la postkomaj ciferoj
- parse – (nedeviga) nombroformato de enigoj
- low – (nedeviga) rezulta formato,
1
por „komputila formato“ (defaŭlto: loka Vikio).
- La rezulto fermiĝas per
%
kaj la nombrovaloro mem tial ne povas esti formatita. 0
se nevalida.- Ramanujan
- random
- (pseŭdo-)hazarda nombro (entjera)
- 1 – (nedeviga) Bazo, normigo, nombro de valoroj (defaŭlto:
100
), entjera >1.
- 1 – (nedeviga) Bazo, normigo, nombro de valoroj (defaŭlto:
- Rezultoj estas entjeraj, komencantaj ĉe inklude nulo, plej granda valoro unu malpli ol nombro.
- Ĉiu enplekto en la paĝo liveras sendependan kaj tial plej ofte malsaman rezulton. ĈE tri eblaj valoroj kaj kvar enplektoj ripetoj fakte ne eviteblas.
- seed-valoroj por certigo de malsamaj valoroj ene de paĝo ne estas necesaj.
- sum
- Kalkulas sumon
- 1 – Unua nombro
- 2 – Dua nombro
- parse – (nedeviga) nombroformato de enigoj
- 3 – (nedeviga) plia nombro
- 4 ktp. – (nedeviga) pliaj nombroj, ajne multaj
- La sumo estas ĉiam minimume
0
kaj nevalidaj valoroj estas ignorataj. - failsafe
- Versiomanaĝado
Rekta enplekto en ŝablonoj
[redakti fonton]- TemplateAverage
- Kiel average, sed uzas ĉiujn parametrojn de la ĉirkaŭanta ŝablono.
- TemplateBooland
1
, se ĉiuj parametroj estas „io“, alie „nenio“.- Uzu ĉiujn parametrojn de la ĉirkaŭanta ŝablono.
- TemplateBoolor
1
, se unu parametro estas „io“, alie „nenio“.- Uzu ĉiujn parametrojn de la ĉirkaŭanta ŝablono.
- TemplateMax
- Kiel max, sed speciale por Ŝablono:Max – uzas ĉiujn parametrojn de ĉirkaŭanta ŝablono.
- TemplateMin
- Kiel min, sed speciale por Ŝablono:Min – uzas ĉiujn parametrojn de ĉirkaŭanta ŝablono.
- TemplateSum
- Kiel sum, sed uzas ĉiujn parametrojn de la ĉirkaŭanta ŝablono.
Unicode-minussigno
[redakti fonton]En la enigaj valoroj povas esti uzataj kaj la ASCII-signo -
sur la klavaro (U+002D) kaj la tipografia minusa signo − (U+2212). La minus-signo estas uzata jene:
- Se unu el la enigaj valoroj enhavas la Unicode-minuson U+2212, ĝi ankaŭ estas uzata en la rezulto.
- Opcio
minus=1
surekranigi la rezulton ĉiam kun la Unicode-minuso.[2] - Opcin
minus=-
surekranigi rezulton ĉiam kun ASCII-streketo-minuso.
Rezulto kun Unikoda minuso-signo estas neeviteble ĉiam signoĉeno.
nombroformato de la enigo
[redakti fonton]Ekzemploj (testpaĝo)
[redakti fonton]Testpaĝo ilustras praktikajn ekzemplojn.
Funkcioj por Lua-moduloj
[redakti fonton]Multaj el la supre dokumentitaj funkcioj ankaŭ povas esti enplektataj per require()
en aliajn modulojn:
local lucky, Expr = pcall( require, "Module:Expr" )
if type( Expr ) == "table" then
Expr = Expr()
else
-- Fehlerfall; Expr enthält Fehlermeldung
return "<span class='error'>" .. Expr .. "</span>"
end
Poste uzeblas:
- Expr.average( array, ask )
-
array
– sekvenca table, kun string aŭ numberask
– nombroformato de la enigoj
- Ergebnis: number, minimume
0
- Expr.base62( adjust )
-
adjust
– string aŭ number- number – kodigu al base62 (string)
- string – dekodigu al number
- Expr.crossTotal( amount )
-
amount
– string aŭ number
- Rezulto: number, kun Quersumme de la pozitiva entjera parto, minimume
0
- Expr.decimal2minsec( amount, align, ask )
-
amount
– Decimala nombro, string aŭ numberalign
– Nombro de la postkomaj ciferoj de la sekundoj, string aŭ number (Defaŭlto:0
)ask
– nombroformato de la decimala nombro
- Rezulto: mw.html-objekto en sukcesa kazo, string
0
alie - Expr.figure( amount, ask, advance, area )
-
amount
– Zahl, string aŭ numberask
– nombroformatoadvance
– true: esprimojarea
– Zahlenbereich
- Rezulto: number, aŭ
false
se nevalida - Expr.minsec2decimal( aDeg, aMin, aSec, alter, ask )
-
aDeg
– Grada nomro, string aŭ numberaMin
– Minuta nombro, string aŭ number aŭ nenioaSec
– Sekunda nombro, string aŭ number aŭ nenioalter
– Litero por ĉieldirekto, aŭ nenioask
– nombroformato de la enigoj
- Rezulto: number,
0
se nevalida - Expr.modulo( amount, adjust, ask )
-
amount
– Nombro, string aŭ numberadjust
– Bazo, string aŭ numberask
– nombroformato de la enigoj
- Rezulto: number,
0
se nevalida - Expr.percent( amount, all, align, after, ask, allow, frame )
-
amount
– Parto, string aŭ numberall
– Bazo (Bezugswert), string aŭ numberalign
– Nombro de la postkomaj ciferoj, string aŭ number (Defaŭlto: neniu)after
–true
, um schließende Nullen in den Nachkommastellen beizubehaltenask
– nombroformato der Eingabenallow
– Ergebnis-Format,true
, für „Computer-Format“ (Vorgabe: lokales Wiki).frame
– Objekt, falls zur Hand
- Das Ergebnis schließt mit einem
%
ab und der Zahlenwert kann deshalb nicht selbst formatiert werden. - number
0
wenn ungültig - Expr.sum( array, ask )
-
array
– sequence table, mit string oder numberask
– nombroformato der Eingaben
- Zwei Ergebnisse:
- number, mit Summe, mindestens
0
- number, mit Anzahl gültiger Summanden, mindestens
0
- number, mit Summe, mindestens
- Expr.failsafe( atleast )
- (wie oben)
Als Rückgabewerte kommen number, Zeichenketten oder false
in Frage.
Verwendung
[redakti fonton]Allgemeine Bibliothek; nicht eingegrenzt.
- Vorlage:%
- Ŝablono:booland
- Ŝablono:boolor
- Vorlage:Dezimalgrad
- Vorlage:Grad
- Ŝablono:max
- Ŝablono:min
- Vorlage:modulo
- Vorlage:NurWennZahl
- Vorlage:Quersumme
- Vorlage:Zufallszahl
Dependeco
[redakti fonton]Neniu.
Anmerkungen
[redakti fonton]- ↑ La sola garantiita valoro estas
1
por „jes, vera“. Ĉiu specifo de la parametro havas la saman efikon, sed estas nedezirinda. - ↑ La sola garantiita valoro estas
1
por „Unicode-minuso“. Ajna specifo de la parametro krom kun la valoro-
havas ja la saman efikon, sed estas nedezirinda.
Implementierung in Vorbereitung
[redakti fonton]Die nachstehenden Funktionen sind teilweise bereits implementiert, jedoch noch nicht ausgetestet und nicht freigegeben.
- digitAt
- Ziffer aus einer Ganzzahl extrahieren
- Vorlage:Ziffer
- digitsAt
- Ziffern aus einer Ganzzahl extrahieren
- Vorlage:Ziffern
- IstZahl
- Vorlage:IstZahl
- isInList
- Ist es in der Liste?
- Vorlage:In Liste