在lua中为变量添加带标点符号的变量

时间:2016-02-28 06:31:16

标签: lua lua-patterns

我正在尝试基于在lua上运行的Ptokax为DC ++ hub编写脚本 我正在尝试分配在其间具有标点符号的缺口(变量),但它给出了nil值 (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 =尼克,   sFromNick = sFromNick,   sMessage =要发送的消息

我得到的是 spm sTo _尼克

在这里可以看到https://repl.it/BrAg/3

任何人都可以建议编辑或帮助。

1 个答案:

答案 0 :(得分:2)

您需要重新排列捕获组:

cmd,sToNick1,sToNick2,sFromNick,sMessage =
 string.match(sData, "%b<>%s["..sPattern.."](%a*)%s+(%w*)"..pattern.."(%w*)%s+(%w*)%s+(.*)")

请参阅updated demo