Lua敏感词过滤实现
时间: 2024-04-24 22:26:12 浏览: 6
Lua敏感词过滤可以通过正则表达式或者字符串匹配来实现。以下是一个简单的示例代码:
```lua
local sensitiveWords = {"敏感词1", "敏感词2", "敏感词3"} -- 敏感词列表
function filterSensitiveWords(text)
for i, word in ipairs(sensitiveWords) do
local pattern = string.format("(%s)", word) -- 构建匹配模式
text = string.gsub(text, pattern, string.rep("*", string.len(word))) -- 将敏感词替换为相同长度的星号
end
return text
end
-- 测试
local inputText = "这是一段包含敏感词的文本,敏感词1和敏感词2都应该被过滤掉。"
local filteredText = filterSensitiveWords(inputText)
print(filteredText)
```
在上述示例中,我们首先定义了一个敏感词列表 `sensitiveWords`,然后定义了一个名为 `filterSensitiveWords` 的函数。该函数使用 `string.gsub` 函数将文本中的敏感词替换为相同长度的星号。最后,我们进行了一个简单的测试,输出结果为过滤后的文本。
请注意,这只是一个简单的示例实现,还可以根据实际需求进行更复杂的处理,比如忽略大小写、支持多语言等。