Modul:Chronik/Work: Unterschied zwischen den Versionen

Aus FürthWiki
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
local p = {}
local p = {}
local c = require("Modul:Common")
local str = require("Modul:String")


function p.dateParser(s, year)
function p.dateParser(s, year)
dates = p.split(s, "-")
dates = str.split(s, "-")
-- Wenn splitten mit "-" nur ein Ergebnis bringt, splitte mit "bis"
-- Wenn splitten mit "-" nur ein Ergebnis bringt, splitte mit "bis"
if len(dates) == 1 then
if len(dates) == 1 then
dates = p.split(s, "bis")
dates = str.split(s, "bis")
end
end
-- Alle Leerzeichen links und rechts in den Ergebnissen entfernen
-- Alle Leerzeichen links und rechts in den Ergebnissen entfernen
for i, value in ipairs(dates) do
for i, value in ipairs(dates) do
dates[i] = strip(dates[i])
dates[i] = str.strip(dates[i])
end
end
Zeile 17: Zeile 17:
end
end
return s, year
return s, year
end
function p.replace(s, old, new, count)
    local result
    -- Wenn count angegeben ist, wird string.gsub mit dem limitierten Ersetzungszähler verwendet
    if count then
    result = string.gsub(s, old, new, count)
    else
        -- Wenn kein count angegeben ist, wird string.gsub alle Vorkommen ersetzen
        result = string.gsub(s, old, new)
    end
    return result
end
function p.split(s, delimiter)
delimiter = delimiter or " "
    local result = {}
    local start = 1
    local delim_start, delim_end = string.find(s, delimiter, start, true)  -- true = plain find (keine Patterns)
    while delim_start do
        table.insert(result, string.sub(s, start, delim_start - 1))
        start = delim_end + 1
        delim_start, delim_end = string.find(s, delimiter, start, true)
    end
    table.insert(result, string.sub(s, start))
--[[Debugging only
for _, value in ipairs(result) do
    mw.log(value)  -- oder print(value), wenn du es direkt in der Konsole sehen möchtest
end]]
    return result
end
end


return p
return p

Version vom 24. August 2025, 08:14 Uhr

Die Dokumentation für dieses Modul kann unter Modul:Chronik/Work/Doku erstellt werden

local p = {}
local str = require("Modul:String")

function p.dateParser(s, year)
	dates = str.split(s, "-")
	-- Wenn splitten mit "-" nur ein Ergebnis bringt, splitte mit "bis"
	if len(dates) == 1 then
		dates = str.split(s, "bis")
	end
	-- Alle Leerzeichen links und rechts in den Ergebnissen entfernen
	for i, value in ipairs(dates) do
		dates[i] = str.strip(dates[i])
	end
	
	for _, value in ipairs(dates) do
    	mw.log(value)  -- oder print(value), wenn du es direkt in der Konsole sehen möchtest
	end
	return s, year
end

return p