Module:Summary
武外梗百科 爱国好学自强图新的百科全书
更多操作
此模块的文档可以在Module:Summary/doc创建
local p = {}
-- 輔助函數:從文本中提取第一段(以換行符分隔)
function p.get(frame)
local title = mw.title.new(frame.args[1] or frame.getParent().args[1])
if not title then
return ''
end
local content = title:getContent()
if not content then
return ''
end
-- 移除所有 Wiki 標記和模板調用,只保留純文本
-- 這是一個簡化版本,用於快速提取
local plainText = mw.text.strip(content)
-- 以兩個或多個換行符分隔,通常表示段落
local paragraphs = mw.text.split(plainText, "\n\n", true)
-- 找到第一個非空且非特殊(如只有模板或表格)的段落
for _, para in ipairs(paragraphs) do
local trimmedPara = mw.text.trim(para)
-- 忽略純粹是表格、列表或標題的行
if not trimmedPara:match('{|') and
not trimmedPara:match('^%*') and
not trimmedPara:match('^#') and
not trimmedPara:match('^=') and
trimmedPara ~= '' then
-- 將摘要限制在 150 個字符左右
local summary = mw.text.truncate(trimmedPara, 150, '...')
return summary
end
end
return '' -- 如果找不到合適的摘要,返回空
end
return p