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

Ĉ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
isAuthority
Ĉu ĝi estas la servila adreso (ankaŭ IP) de risurco, inklude de pordo?
  • 1jes
isDomain
Ĉu ĝi estas nomata domajno, inklude de subdomajnoj?
  • 1jes
isHost
Ĉu ĝi estas servila adreso sen pordo (ankaŭ IP)?
  • 1jes
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)?
  • 1jes
isIPv6
Ĉu ĝi estas IPv6-adreso?
  • 1jes
isMailAddress
Ĉu ĝi estas retpoŝta adreso?
  • 1jes
isMailLink
Ĉu ĝi estas retpoŝta ligilo (mailto:)?
  • 1jes
isProtocolDialog
Ĉu ĝi estas URL / skemo-nomo, kiu povas enkonduki en la Vikio dialogon?
mailto, irc, ircs, ssh, telnet
  • 1jes
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.
  • 1jes
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.
  • 1jes
isSuspiciousURL
Ĉu ĝi estas sintakse „suspektinda“ URL, kontraŭ kiu devus esti atentigata?
  • 1jes
isUnescapedURL
Ĉu ĝi estas URL, ĉe kiu ankoraŭ Vikisintakso [ | ] devas esti abgefangen werden muss?
  • 1jes
isWebURL
Ĉu ĝi estas valida adreso por risurco (Protokolo ajna)?
  • 1jes
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

Testopaĝo ilustras praktikajn ekzemplojn.

Funkcioj por Lua-moduloj

redakti

Ĉ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.

Ĝenerala biblioteko; ne limigita.

Dependeco

redakti

Neniu.

Vidu ankaŭ

redakti
  • mw: Uri library – aliaj funkciecoj sur ĝenerala URI; sed speciale por Vikiaj URL helpaj.

Modelo

redakti