
![]() | มอดูลนี้ได้รับการจัดอันดับว่า มีความสมบูรณ์แล้วและคิดว่าจะปราศจากข้อผิดพลาดและพร้อมสำหรับการใช้งานตามความเหมาะสม พร้อมจะกล่าวถึงในหน้าช่วยเหลือและแหล่งข้อมูลวิกิพีเดียอื่น ๆ ว่าเป็นตัวเลือกสำหรับผู้ใช้ใหม่ในการเรียนรู้ เพื่อลดภาระของเซิร์ฟเวอร์และเอาต์พุตที่ไม่ดี ควรปรับปรุงโดย แทนที่จะแก้ไขแบบลองผิดลองถูกซ้ำ ๆ |
This module directly imports all functions from the library. Documentation for each function can be found there.
The module takes an indefinite number of arguments. Arguments given as |s1=
, |s2=
, etc, are read first, and are used as strings. All remaining numerical arguments are coerced to number type if possible, and remain strings if not. If you wish for a numerical (i.e. unnamed or "|1=
", "|2=
") to remain a string, you can simply escape it by inserting \
at the beginning of the string.
Note that MediaWiki will always trim whitespace from named arguments; to give arguments with surrounding whitespace you must use unnamed parameters starting with \
.
To pass this... | Write this | Explanation |
---|---|---|
" 0123 " | |\ 123 | To get surrounding whitespace must use unnamed, but must precede with \ to indicate that it isn't a number. |
"0123" | |s1=0123 | If you don't need to preserve whitespace use |s1= etc. |
In another template, to pass its parameter {{{1}}} , preserving whitespace | |\{{{1}}} | Must provide the \ with unknown string input. |
In another template, to pass its parameter {{{1}}} , stripping whitespace | |s1={{{1}}} |
You can also wrap results in tags. All non-number indexed arguments will be passed to
Usage
{{#invoke:Ustring|function_name|arg1|arg2|...}}
is equivalent to
Example using mw.ustring.sub
{{#invoke:Ustring|sub|s1=abcde|2|4}}
produces:
bcd
Example using mw.ustring.gsub
{{#invoke:Ustring|gsub|s1=1234|23|}}
produces:
14
Example using mw.ustring.char
&#{{#invoke:ustring|char|49|48|59}}
produces:
Example using mw.ustring.match
{{#invoke:Ustring|match|s1=abcde|s2=(c%w)}}
produces:
cd
Note: Only the first match is returned. Additional returns are omitted because mw.ustring.gsub's second return value is generally undesirable.
Example using tag arguments
{{#invoke:Ustring|match |s1={{Module:Ustring}}|%s%s%sif%snot%s[^%s]+%sthen.+% <!--enter an actual newline character to match '\n'-->%s%s%send |tag=syntaxhighlight|lang=lua}}
produces:
if not fargs.tag then return (what(unpack(args)))-- Outside parens truncate to first result avoiding tail call end local tagargs = {} for x, y in pairs(fargs) do if not fargsused[x] then tagargs[x] = y end end
Note that:
<syntaxhighlight lang="lua">{{#invoke:Ustring|match |s1={{Module:Ustring}}|%s%s%sif%snot%s[^%s]+%sthen.+% <!--enter an actual newline character to match '\n'-->%s%s%send}}</syntaxhighlight>
produces:
{{#invoke:Ustring|match |s1={{Module:Ustring}}|%s%s%sif%snot%s[^%s]+%sthen.+% <!--enter an actual newline character to match '\n'-->%s%s%send}}
Errors
Errors from accessing should be maintained, e.g.:
{{#invoke:Ustring|xyzzy}}
should produce:
and
{{#invoke:Ustring|maxPatternLength}}
should produce:
See also
คู่มือการใช้งานที่ปรากฏด้านบนนี้ดึงมาจาก (มอดูล:Ustring/doc) (แก้ | ประวัติ) ผู้เขียนสามารถทำการทดลองได้ที่กระบะทราย (สร้าง | คัดลอก) และชุดทดสอบ (สร้าง) ของมอดูลนี้ |
require('Module:No globals') return setmetatable({}, { __index = function(t, k) local what = mw.ustring[k] if type(what) ~= "function" then return what end return function(frame) local fargs = frame.args local fargsused = { tag = true } local args = {} local str_i = 1 while fargs['s' .. str_i] do fargsused['s' .. str_i] = true args[str_i] = fargs['s' .. str_i] str_i = str_i + 1 end for i, v in ipairs(fargs) do fargsused[i] = true args[i + str_i - 1] = tonumber(v) or v:gsub("^\\", "", 1) end if not fargs.tag then return (what(unpack(args)))-- Outside parens truncate to first result avoiding tail call end local tagargs = {} for x, y in pairs(fargs) do if not fargsused[x] then tagargs[x] = y end end return frame:extensionTag{name = fargs.tag, content = what(unpack(args)), args = tagargs} end end })
wikipedia, แบบไทย, วิกิพีเดีย, วิกิ หนังสือ, หนังสือ, ห้องสมุด, บทความ, อ่าน, ดาวน์โหลด, ฟรี, ดาวน์โหลดฟรี, mp3, วิดีโอ, mp4, 3gp, jpg, jpeg, gif, png, รูปภาพ, เพลง, เพลง, หนัง, หนังสือ, เกม, เกม, มือถือ, โทรศัพท์, Android, iOS, Apple, โทรศัพท์โมบิล, Samsung, iPhone, Xiomi, Xiaomi, Redmi, Honor, Oppo, Nokia, Sonya, MI, PC, พีซี, web, เว็บ, คอมพิวเตอร์
khumuxkarichnganmxdul du aek prawti langaekhch mxdulniidrbkarcdxndbwa mikhwamsmburnaelwaelakhidwacaprascakkhxphidphladaelaphrxmsahrbkarichngantamkhwamehmaasm phrxmcaklawthunginhnachwyehluxaelaaehlngkhxmulwikiphiediyxun waepntweluxksahrbphuichihminkareriynru ephuxldpharakhxngesirfewxraelaexatphutthiimdi khwrprbprungody aethnthicaaekikhaebblxngphidlxngthuksa This module directly imports all functions from the library Documentation for each function can be found there The module takes an indefinite number of arguments Arguments given as s1 s2 etc are read first and are used as strings All remaining numerical arguments are coerced to number type if possible and remain strings if not If you wish for a numerical i e unnamed or 1 2 to remain a string you can simply escape it by inserting at the beginning of the string Note that MediaWiki will always trim whitespace from named arguments to give arguments with surrounding whitespace you must use unnamed parameters starting with How to pass inconvenient strings To pass this Write this Explanation 0123 123 To get surrounding whitespace must use unnamed but must precede with to indicate that it isn t a number 0123 s1 0123 If you don t need to preserve whitespace use s1 etc In another template to pass its parameter 1 preserving whitespace 1 Must provide the with unknown string input In another template to pass its parameter 1 stripping whitespace s1 1 You can also wrap results in tags All non number indexed arguments will be passed to Usage invoke Ustring i function name i arg1 arg2 is equivalent to Example using mw ustring sub invoke Ustring sub s1 abcde 2 4 produces bcd Example using mw ustring gsub invoke Ustring gsub s1 1234 23 produces 14 Example using mw ustring char amp amp invoke ustring char 49 48 59 produces amp 10 Example using mw ustring match invoke Ustring match s1 abcde s2 c w produces cd Note Only the first match is returned Additional returns are omitted because mw ustring gsub s second return value is generally undesirable Example using tag arguments invoke Ustring match s1 Module Ustring s s sif snot s s sthen lt enter an actual newline character to match n gt s s send tag syntaxhighlight lang lua produces if not fargs tag then return what unpack args Outside parens truncate to first result avoiding tail call end local tagargs for x y in pairs fargs do if not fargsused x then tagargs x y end end Note that lt syntaxhighlight lang lua gt invoke Ustring match s1 Module Ustring s s sif snot s s sthen lt enter an actual newline character to match n gt s s send lt syntaxhighlight gt produces invoke Ustring match s1 Module Ustring s s sif snot s s sthen lt enter an actual newline character to match n gt s s send Errors Errors from accessing should be maintained e g invoke Ustring xyzzy should produce and invoke Ustring maxPatternLength should produce See alsokhumuxkarichnganthipraktdanbnnidungmacak mxdul Ustring doc aek prawti phuekhiynsamarththakarthdlxngidthikrabathray srang khdlxk aelachudthdsxb srang khxngmxdulni hnayxykhxngmxdulni require Module No globals return setmetatable index function t k local what mw ustring k if type what function then return what end return function frame local fargs frame args local fargsused tag true local args local str i 1 while fargs s str i do fargsused s str i true args str i fargs s str i str i str i 1 end for i v in ipairs fargs do fargsused i true args i str i 1 tonumber v or v gsub 1 end if not fargs tag then return what unpack args Outside parens truncate to first result avoiding tail call end local tagargs for x y in pairs fargs do if not fargsused x then tagargs x y end end return frame extensionTag name fargs tag content what unpack args args tagargs end end