无法在 Lua 模式中使用百分比 (%)
我的 Lua 脚本中有这样一行,每次都会使我的软件崩溃:
fmt_url_map = string.gsub( fmt_url_map, '%2F','/' )
我想将文本中出现的所有 %2F
替换为 /
。 如果我删除 % ,它不会崩溃。
我做错了什么?
I have this line in a Lua script that crash my software every time:
fmt_url_map = string.gsub( fmt_url_map, '%2F','/' )
I want to replace all occurrences of %2F
occurrences in a text to /
.
If I remove the % , it doesn't crash.
What am I doing wrong ?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
%
是 Lua 模式中的一个特殊符号。它用于表示某些字符集(称为字符类)。例如,%a
代表任意字母。如果您想字面匹配%
,则需要使用%%
。有关详细信息,请参阅 Lua 参考手册的本节。我怀疑您遇到了问题,因为%F
不是字符类。%
is a special symbol in Lua patterns. It's used to represent certain sets of characters, (called character classes). For example,%a
represents any letter. If you want to literally match%
you need to use%%
. See this section of the Lua Reference Manual for more information. I suspect you're running into problems because%F
is not a character class.您需要用另一个“%”来转义“%”
You need to escape the '%' with another '%'