Modulo:String/sandbox: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica |
test isnumber |
||
Riga 425:
]]
local collation = {
{ '[áàăắằẵẳâấầẫẩǎåǻäǟãȧǡąāảȁȃạặậḁⱥᶏᴂɐᶐɒ]' , 'a'},
{'[ÁÀĂẮẰẴẲÂẤẦẪẨǍÅÅǺÄǞÃȦǠĄĀẢȀȂẠẶẬḀȺᴁ]', 'A'},
Line 433 ⟶ 434:
{'[ćĉčċçḉȼƈ]', 'c'},
{'[ĆĈČĊÇḈȻƇ]', 'C'},
{'[
{'[
{'[éèèêếềễểěëẽėȩḝęēḗḕẻȅȇẹệḙḛǝ]', 'e'},
{'[ÉÈÈÊẾỀỄỂĚËẼĖȨḜĘĒḖḔẺȄȆẸỆḘḚƎ]', 'E'},
Line 458 ⟶ 459:
{'[ÓÒŎÔỐỒỖỔǑÖȪŐÕṌṎȬȮȰØǾǪǬŌṒṐỎȌȎƠỚỜỠỞỢỌỘ]', 'O'},
{'[ṕṗ]', 'p'},
{'[
{'[ŕřṙŗȑȓṛṝṟ]', 'r'},
{'[ŔŘṘŖȐȒṚṜṞ]', 'R'},
Line 476 ⟶ 477:
{'[ŹẐŽŻẒẔƵȤʐⱫ]', 'Z'},
}
local new_args = str._getParameters(frame.args, {'source'})▼
local source = new_args['source'] or ''▼
--local source = mw.ustring.toNFC(source)▼
for _, el in ipairs(collation) do
source = mw.ustring.gsub( source, el[1], el[2])
end
return source
Line 483 ⟶ 489:
--[[
Funzione per estrarre da un titolo la stringa adatta all'ordinamento alfabetico.
]]
function str.collate( frame )▼
▲ local new_args = str._getParameters(frame.args, {'source'})
▲ local source = new_args['source'] or ''
▲ --local source = mw.ustring.toNFC(source)
end▼
function str.titolo_alfa(frame)
Line 506 ⟶ 504:
end
source = mw.ustring.gsub(source, ' %(.*%)$', '')
source =
source = mw.ustring.gsub(source, "^['%(%.¡¿ ]*", '')
for _,article in ipairs(articoli) do
Line 515 ⟶ 513:
return source
end
-- =================================================================
Line 809 ⟶ 808:
end
--[[
isnumber
Questa funzione ritorna la stringa passata se è un numbero, altrimenti ritorna una stringa vuota.
Uso:
{{#invoke:String|isnumber|source_string}}
O
{{#invoke:String|isnumber|s=source_string}}
Parametri
s: La stringa da testare
Evntuali spazi iniziali e finali saranno eliminati dalla stringa prima del controllo. Considera
sia il "." che la "," come separatori decimali
]]
local new_args = str._getParameters( frame.args, {'s'} );
local s = new_args['s'] or '';
s = mw.text.trim(s);
s = string.sub(s, ",", ".");
if tonumber(s) then
return s
end
return
▲end
--[[
|