跳转到内容
主菜单
主菜单
移至侧栏
隐藏
导航
首页
最近更改
随机页面
MediaWiki帮助
特殊页面
TPC
搜索
搜索
外观
创建账号
登录
个人工具
创建账号
登录
未登录编辑者的页面
了解详情
贡献
讨论
编辑“︁
模块:LineStationBuilder
”︁
模块
讨论
English
阅读
编辑
查看历史
工具
工具
移至侧栏
隐藏
操作
阅读
编辑
查看历史
常规
链入页面
相关更改
页面信息
外观
移至侧栏
隐藏
警告:
您没有登录。如果您进行任何编辑,您的IP地址会公开展示。如果您
登录
或
创建账号
,您的编辑会以您的用户名署名,此外还有其他益处。
反垃圾检查。
不要
加入这个!
-- This module is written by HYH_HS with Deepseek -- Module:LineStationBuilder -- 动态生成带链接的线路站点列表,自动过滤无效条目(如 "-") local p = {} function p.main(frame) local args = frame.args local lineCode = args[1] if not lineCode or lineCode == '' then return '' end -- 1. 获取原始站点列表字符串(复用现有 TextLineList 模板) local raw = frame:expandTemplate{ title = 'TextLineList', args = { lineCode } } if not raw or raw == '' then return '' end -- 2. 按空白字符拆分,并过滤掉无效的站点名 local stations = {} for token in string.gmatch(raw, "%S+") do -- 去除首尾空白(虽然 %S+ 不会匹配空白,但安全起见) local name = token:match("^%s*(.-)%s*$") -- 过滤:空字符串、单个横线、其他无意义符号(可根据需要扩展) if name ~= "" and name ~= "-" and name ~= "—" then table.insert(stations, name) end end if #stations == 0 then return '' end -- 3. 将每个站点名转换为链接 [[站点名]] -- 如果 TextLineList 已经返回 [[站A]] 形式,请去掉下面这一行的括号包装 for i, name in ipairs(stations) do stations[i] = '[[轨道交通/车站/' .. name .. '|'..name..']]' end -- 4. 用 " • " 拼接,末尾不增加多余字符 local result = stations[1] for i = 2, #stations do result = result .. '•' .. stations[i] end return result end return p
摘要:
请注意,所有对TPC的贡献均可能会被其他贡献者编辑、修改或删除。如果您不希望您的文字作品被随意编辑,请不要在此提交。
您同时也向我们承诺,您提交的内容为您自己所创作,或是复制自公共领域或类似自由来源(详情请见
TPC:著作权
)。
未经许可,请勿提交受著作权保护的作品!
取消
编辑帮助
(在新窗口中打开)
该页面使用的模板:
模块:LineStationBuilder/doc
(
编辑
)
搜索
搜索
编辑“︁
模块:LineStationBuilder
”︁
添加话题