基本问题,但我一直试图弄清楚一段时间没有运气。
我正在处理 url,需要做一个简单的替换。
我需要用文字字符串替换空格%20
,但我似乎无法逃避 % 或%2
报告为无效捕获的 。
text = string.gsub(text, "%s+", '%%20')
%
我必须在里面使用多少gsub
才能逃脱%
标志和%2
捕获。
基本问题,但我一直试图弄清楚一段时间没有运气。
我正在处理 url,需要做一个简单的替换。
我需要用文字字符串替换空格%20
,但我似乎无法逃避 % 或%2
报告为无效捕获的 。
text = string.gsub(text, "%s+", '%%20')
%
我必须在里面使用多少gsub
才能逃脱%
标志和%2
捕获。
似乎对我有用:
> text="hello world"
> print(string.gsub(text, "%s+", '%%20'))
hello%20world 1
您需要显示更多代码和错误消息。
或者,您可以使用以下方法自动执行此操作:
url = require("socket.url")
text = url.escape(string)
当然,这是假设您的 lua 路径中确实有套接字库。老实说,这就是我对 url 做任何事情的方式,因为这样您就不必担心将逗号转换为 %2c 或将撇号转换为 %27。