lua正则替换_Lua 语言如何替换多个可选字符串

沧海一幻觉

1234567891011121314151617181920212223242526272829303132333435----- function maskMsg takes string, table, string returns string---- @text    预处理的文本-- @set     预搜索的子串集合--           -- @repl    替换的文本--          不指定则替换成 与字符串长度相等的 "*"---- @return  处理后的文本        local function maskMsg ( text, set, repl )    if #text <= 0  then        return text    end    local function maskor ( str )        return repl or string.rep( "*", #str )    end    for k, str in pairs(set) do        text = string.gsub( text, str, maskor(str) )    end    return textend --  对给定文本中出现的 给定集合中的子串进行替换text = "lua is my style! hello boy ,let`s go,我们的主题曲! Bingo!"wordLib = {"lua","my","hello","go","主题","你好"}local function main ()    local msg = maskMsg ( text, wordLib, "**")    print(msg)     endmain()--- 输出结果--  ** is ** style! ** boy ,let`s **,我们的**曲! Bin**!【注:】 【1】上面这个demo 是效率很低很低的方法。【2】附件:简单屏蔽指定集合中的单词(含中文)- flameleo.lua12--- 输出结果--  ** is ** style! ** boy ,let`s **,我们的**曲! Bingo!是一个分别处理模式串和非模式串的方法,需要改进中文分词算法 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值