Wikipedia:Lua/Modul/URLutil/eo

Vorlagen-
programmierung
Diskussionen Lua Test Unterseiten
Modul Deutsch English Esperanto Dolnoserbski Hornjoserbsce Modul: WP:Lua

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:

Funkcioj por ŝablonoj

Ĉ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 protokolo
  • https:// – 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
getTop3domain
  • 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
isDomainExample
  • 1 – jes
isHost
Ĉu ĝi estas servila adreso sen pordo (ankaŭ IP)?
  • 1 – jes
isIP
Ĉu ĝi estas IP-adreso?
  • 4 se IPv4 (en norma notado)
  • 6 se IPv6
  • nenio – alikaze
isIPv4
Ĉu ĝi estas IPv4-adreso en norma notado (per punktoj disigita, decimala)?
  • 1 – jes
isIPlocal
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.
failsafe

The Failsafe interface is heading for version management of globally distributed Lua modules. It enables modules equipped with this interface to

The Failsafe interface is present both at template level and for direct Lua access.

The functions in detail are (not all supported yet completely by every library):

Parameter
Value Result current
nothing
false
local version ID »2026-06-07«
Minimal version version ID required at least
date in ISO format

It will be compared whether the current local implementation matches this version or later.

  • empty, if minimal version not achieved
  • 2001-01-01 → »2026-06-07«
  • 2099-01-01 → »«
wikidata version ID of global upstream
  • version ID at Wikidata
  • local, if not found there
»2026-06-07«
item ID of the Wikidata item
  • empty if not defined
Q10859193
~ Corresponding version ID locally and registered at Wikidata
  • empty, if up to date
  • version ID at Wikidata, if not equal
»«
@ Is the current (module) page linked correctly with Wikidata item?
  • empty, if linked to the item which is supposed
  • Iitem ID, if not
The return value is in template programming empty or under Lua false, otherwis a non-empty string as described.

Ekzemploj (Testopaĝo)

Testopaĝo ilustras praktikajn ekzemplojn.

Funkcioj por Lua-moduloj

Ĉiuj supre dokumentitaj funkcioj ankaŭ povas esti enplektataj per require() en aliajn modulojn:

local lucky, URLutil = pcall( require, "Module: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:

En sukcesa kazo la URLutil.get*() redonas signoĉenon, la URLutil.is*() la valoron true (se ne alie donita); ĉe malsukceso ĉiufoje false.

Uzado

Ĝenerala biblioteko; ne limigita.

Dependeco

Neniu.