Nicht angemeldeter Benutzer - Bearbeiten von Seiten ist nur als angemeldeter Benutzer möglich.
Änderungen
Zur Navigation springen
Zur Suche springen
Zeile 102:
Zeile 102:
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Zeichenkettenersetzung (Spezial:Permanentlink/133377635#Modul:Str)
end
end
function escape_lua_regex(str)
return mw.ustring.gsub(str, ".", {
["%"] = "%%";
["^"] = "%^";
["$"] = "%$";
["."] = "%.";
["("] = "%(";
[")"] = "%)";
["["] = "%[";
["]"] = "%]";
["?"] = "%?";
["*"] = "%*";
["+"] = "%+";
["-"] = "%-";
["\0"] = "%z";
})
end
function Str.replace(frame)
local text = frame.args[1] or "" -- Text, der bearbeitet werden soll
local search = frame.args[2] or "" -- Textstellen innerhalb von "text" die ersetzt werden sollen
if text == "" or search == "" then return "" end
local replace = frame.args[3] or "" -- Ersetzungstext
local count = tonumber(frame.args[4]) -- Anzahl der Ersetzungen (optional)
local regexsearch = frame.args[5] -- beliebiger Wert um dafür zu sorgen, dass der Suchtext "search" als Lua-regulärer Ausdruck behandelt werden soll
if not regexsearch then
search = escape_lua_regex(search)
replace = mw.ustring.gsub(replace, "%%", "%%%%")
end
local result
if count then
result,_ = mw.ustring.gsub(text, search, replace, count)
else
result,_ = mw.ustring.gsub(text, search, replace)
end
return result
end
return Str
return Str