【发布时间】:2011-10-16 21:38:45
【问题描述】:
我有一段 lua 代码(在 Corona 中执行):
local loginstr = "emailAddress={email} password={password}"
print(loginstr:gsub( "{email}", "tester@test.com" ))
此代码生成错误:
捕获索引无效
虽然我现在知道这是因为在 gsub 模式中没有正确指定花括号,但我不知道如何修复它。
我应该如何形成 gsub 模式,以便我可以用电子邮件地址值替换占位符字符串?
我浏览了所有我能找到的面向 lua 的网站,但大多数文档似乎都围绕着不相关的情况。
【问题讨论】:
-
您不会对 URL 的电子邮件进行编码,是吗?编码字符串中的
%40肯定会导致错误。就目前而言,上述内容适用于标准 LUA。 -
@vhallac:你应该把它写下来作为答案:ideone.com/fMRZ5
-
@muistooshort 我会,但没有迹象表明电子邮件地址已编码。
-
@vhallac:但如果变量真的是
loginurl并且问题中的代码只是演示代码,那么您的 URL 编码猜测可能会失败。当然是您的电话。 -
@vhallac 你是对的,电子邮件将来自网络表单。我如何确保编码的@(如 %40)不会引起问题?而且,就此而言,为什么会这样?谢谢大家:)