我试图为DC++集线器编写一个脚本,该脚本基于运行在lua上的Ptokax,我试图分配一个包含标点符号的尼克(一个变量),但它给出了零值(sPattern是!(已在脚本中分配)
sData = "11:03:30 !spm sTo_Nick sFromNick消息将被发送“
cmd,sToNick1,sToNick2,sFromNick ,sMessage = string.match(sData, "%b<>%s["..sPattern.."](%a*)(%s+)(%w*)(%s+)(%w*)(%s+)(%.*)")我想被分配的是
cmd = spm sToNick1 = sTo,sToNick2 = Nick,sFromNick = sFromNick,sMessage =要发送的消息
我得到的是spm sTo _ Nick
有谁能建议编辑或帮助。
发布于 2016-02-28 07:33:40
您需要重新排列捕获组:
cmd,sToNick1,sToNick2,sFromNick,sMessage =
string.match(sData, "%b<>%s["..sPattern.."](%a*)%s+(%w*)"..pattern.."(%w*)%s+(%w*)%s+(.*)")见更新演示
https://stackoverflow.com/questions/35679539
复制相似问题