无法在 Lua 模式中使用百分符号(%)。

我有一行 Lua 脚本代码,每次运行会导致软件崩溃:

fmt_url_map = string.gsub( fmt_url_map, '%2F','/' )

我想将文本中所有的 %2F 替换为 /。 如果我删除 %,它就不会崩溃。

我做错了什么?

原文链接 https://stackoverflow.com/questions/6935272

点赞
stackoverflow用户63791
stackoverflow用户63791

% 是 Lua 模式中特殊的符号。它用于表示某些字符集(称为字符类)。例如,%a 表示任意字母。如果您要字面匹配 %,则需要使用 %%。请参阅 Lua 参考手册的此节以获取更多信息。我怀疑您遇到问题的原因是 %F 不是字符类。

2011-08-04 01:57:12
stackoverflow用户285151
stackoverflow用户285151

你需要用另一个 '%' 来转义 '%'

fmt_url_map = string.gsub( fmt_url_map, '%%2F','/' )
2011-08-04 01:57:17