Vikipedio:Lua/Moduloj/URLutil/eo
Ŝablona programado | Diskutoj | Lua | Testoj | Subpaĝoj | ||||
---|---|---|---|---|---|---|---|---|
Modulo | Esperanto | English | Deutsch
|
Modulo: | Dokumentado |
URLutil
– Modulo kun funkcioj por signoĉenoj rilate kun interretaj adresoj (URL; IP-adresoj – ankaŭ IPv4 kaj IPv6 – sed ankaŭ retpoŝto). Ankaŭ internaciigitaj adresoj (IRI) estas eblaj.
Supozebla estas utilo por Vikia projekto; do sencoplenaj adresoj en la malferma interreto. Sekvaj specialaj kazoj ne estas programitaj, sed ankaŭ apenaŭ relevantaj:
- IPv4-adreso ne en norma notado (per punktoj disigitaj, decimalaj)
- URL kun IPv6-Host (krampata; ne kongruas bone kun la Vikia sintakso)
- Authority kun username
Funkcioj por ŝablonoj
[redakti fonton]Ĉiuj funkcioj havas ekzakte unu nenomitan parametron (sencoplena donenda). Ĉi tiu estas toleranta kontraŭ spacoj antaŭ aŭ post la enhavo.
La redona valoro estas malplena signoĉeno („nenio“), se la parametra valoro ne plenumas la atendojn. Se ĉeestas rezulto aŭ la demanda kondiĉo estas vera, rezultas minimume unu signo. La rezulto ne komenciĝas aŭ finiĝas per interspaca signo.
- getAuthority
- Ekstraktas el risurca URL la servilan stiradon (rezulto minuskle skribata)
- nenio – se neallasebla
- getHost
- Ekstraktas el risurca URL la domajnon aŭ IP-adreson (rezulto minuskle skribata)
- nenio – se neallasebla
- getPort
- Ekstraktas el risurca URL la pordan informon (rezulto numero)
- nenio – se ne ĉeestas
- getScheme
- Ekstraktas el risurca URL la skemon (rezulto minuskle skribata; inklude de duoblaj oblikvaj strekoj)
//
– relativa protokolohttps://
– protokolo- nenio – se komenco de la URL neallasebla
- getTLD
- Ekstraktas el risurca URL la Domajno de plej alta nivelo (rezulto minuskle skribata)
- nenio – se neellasebla
- getTop2domain
- Ekstraktas el risurca URL la plej suprajn du nivelojn de la domajno (rezulto minuskle skribata)
- nenio – se neellasebla
- isAuthority
- Ĉu ĝi estas la servila adreso (ankaŭ IP) de risurco, inklude de pordo?
1
– jes
- isDomain
- Ĉu ĝi estas nomata domajno, inklude de subdomajnoj?
1
– jes
- isHost
- Ĉu ĝi estas servila adreso sen pordo (ankaŭ IP)?
1
– jes
- isIPv4
- Ĉu ĝi estas IPv4-adreso en norma notado (per punktoj disigita, decimala)?
1
– jes
- isIPv6
- Ĉu ĝi estas IPv6-adreso?
1
– jes
- isMailAddress
- Ĉu ĝi estas retpoŝta adreso?
1
– jes
- isMailLink
- Ĉu ĝi estas retpoŝta ligilo (mailto:)?
1
– jes
- isProtocolDialog
- Ĉu ĝi estas URL / skemo-nomo, kiu povas enkonduki en la Vikio dialogon?
mailto, irc, ircs, ssh, telnet
1
– jes
- isProtocolWiki
- Ĉu ĝi estas URL / skemo-nomo, per kiu povas esti referencata en la Vikio sur risurcon?
- Relativa protokolo sed ankaŭ
ftp ftps git http https mms nntp sftp svn worldwind
- Nedezirataj estas ĉi tie: gopher, wais sed ankaŭ mailto, irc, ircs, ssh, telnet.
1
– jes
- isResourceURL
- Ĉu ĝi estas URL, ĉe kiu ĝenerale povas esti alirata al risurco? Tio estus: relativa protokolo, http, https, ftp kaj krome valida gastiga komputilo (angle Host). Aliaj URL estus imageblaj sur projektaj kaj funkcipaĝoj, sed ne en la enciklopedia tereno.
1
– jes
- isSuspiciousURL
- Ĉu ĝi estas sintakse „suspektinda“ URL, kontraŭ kiu devus esti atentigata?
1
– jes
- isUnescapedURL
- Ĉu ĝi estas URL, ĉe kiu ankoraŭ Vikisintakso
[ | ]
devas esti abgefangen werden muss?1
– jes
- isWebURL
- Ĉu ĝi estas valida adreso por risurco (Protokolo ajna)?
1
– jes
- wikiEscapeURL
- Vikisintakso-sekura
[ | ]
escapen.- Identa kun la parametro, se neniu problema signo aperas.
- Anstataŭaĵo de
[ | ]
per retservilo-sekura HTML-Entities, se ekzistas. Dukto en la ŝablona sintakso ne eblas sen problemoj.
Ekzemploj (Testopaĝo)
[redakti fonton]Testopaĝo ilustras praktikajn ekzemplojn.
Funkcioj por Lua-moduloj
[redakti fonton]Ĉiuj supre dokumentitaj funkcioj ankaŭ povas esti enplektataj per require()
en aliajn modulojn:
local lucky, URLutil = pcall( require, "Modulo:URLutil" )
if type( URLutil ) == "table" then
URLutil = URLutil.URLutil()
else
-- erara kazo; URLutil enhavas erarmesagon
return "<span class='error'>" .. URLutil .. "</span>"
end
Laŭ tio estas je dispono:
- URLutil.getAuthority()
- URLutil.getHost()
- URLutil.getPort()
numera valoro, aŭfalse
- URLutil.getScheme()
- URLutil.getTLD()
- URLutil.getTop2domain()
- URLutil.isAuthority()
- URLutil.isDomain()
- URLutil.isHost()
- URLutil.isIP()
numera 4, 6, aŭfalse
- URLutil.isIPv4()
- URLutil.isIPv6()
- URLutil.isMailAddress()
- URLutil.isMailLink()
- URLutil.isProtocolDialog
- URLutil.isProtocolWiki()
- URLutil.isResourceURL()
- URLutil.isSuspiciousURL()
- URLutil.isUnescapedURL()
- URLutil.isWebURL()
- URLutil.wikiEscapeURL()
En sukcesa kazo la URLutil.get*() redonas signoĉenon, la URLutil.is*() la valoron true
(se ne alie donita); ĉe malsukceso ĉiufoje false
.
Uzado
[redakti fonton]Ĝenerala biblioteko; ne limigita.
Dependeco
[redakti fonton]Neniu.
Vidu ankaŭ
[redakti fonton]- mw: Uri library – aliaj funkciecoj sur ĝenerala URI; sed speciale por Vikiaj URL helpaj.
Modelo
[redakti fonton]- de:Vorlage:URLutil - 15-a de junio 2013, kiu siavice estiĝis parte el en:Module:IPAddress – 1-a de marto 2013
- Unit tests: en:Module:IPAddress/tests