无法在Lua模式中使用百分比(%)

时间:2011-08-04 01:48:29

标签: lua

我在Lua脚本中有这一行,每次都会崩溃我的软件:

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

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

我做错了什么?

2 个答案:

答案 0 :(得分:13)

%是Lua模式中的特殊符号。它用于表示某些字符集(称为字符类)。例如,%a代表任何字母。如果您想要与%字面匹配,则需要使用%%。有关详细信息,请参阅Lua参考手册的this section。我怀疑你遇到了问题,因为%F不是一个字符类。

答案 1 :(得分:6)

您需要使用另一个'%'

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