请问lua怎么用string.gsub把除了字母数字下划线而外的字符删除? string.gsub

请问lua怎么用string.gsub把除了字母数字下划线而外的字符删除?string.gsub(s,"%W","")会把下划线也删除,谢谢了... 请问lua怎么用string.gsub把除了字母数字下划线而外的字符删除?
string.gsub(s,"%W","")会把下划线也删除,谢谢了
展开
 我来答
yaoyue1019
2014-05-05 · 知道合伙人互联网行家
yaoyue1019
知道合伙人互联网行家
采纳数:804 获赞数:3392
擅长lua脚本 与android前端交互设计

向TA提问 私信TA
展开全部
local s = "abc123!@#_)(90asd"
local t = ""
for s in string.gmatch(s,"[%a_]") do
t = t .. s
end
print(t)

换一个思路 只把字符串和下划线取出来 不一定要用gsub

更多追问追答
追问
非常感谢。我是用网上的split分割邮箱的前半部分生成文件名,结果怎么弄文件都出错,显示0字节,后来检查发现可能提取出来的邮箱前半段包含特殊字符,生成的文件名出错。用gsub后果然没问题,但有的邮箱是有下划线的,所以有此一问,晚上回去测试下,应该行的,再次感谢。
追答
刚发现你要保留数字 把%a改成%w吧
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式