Lua中如何按特殊字符“\”拆分?
How to split by special character "\" in Lua?
我尝试用“\”分割,但是这个字符在Lua中很特殊,即使我使用转义字符“%”,IDE也显示错误Unterminated String constant
local index = string.find("lua. is \wonderful", "%\", 1)
要在带引号的字符串中插入反斜杠 \
,请将其自身转义:"\"
。 \
在常规引用的字符串中是 the escape character,所以用 \
转义。或者您可以使用不允许转义序列的长字符串语法,正如已经指出的那样:[[\]]
.
百分比只是用作 pattern 的字符串中的转义字符,因此它在 string.find
的第二个参数中的神奇字符 ^$()%.[]*+-?
之前使用, string.match
、string.gmatch
、string.gsub
、%%
在string.gsub
的第三个参数中表示%
。
百分比仍然存在于存储在内存中的字符串中,但是反斜杠转义序列被替换为相应的字符。当字符串存储在内存中时,\
变为 \
,如果使用 string.gsub
计算字符串 "\"
中反斜杠的数量,它只会找到一个:select(2, string.gsub("\", "\", ""))
returns 1
.
我尝试用“\”分割,但是这个字符在Lua中很特殊,即使我使用转义字符“%”,IDE也显示错误Unterminated String constant
local index = string.find("lua. is \wonderful", "%\", 1)
要在带引号的字符串中插入反斜杠 \
,请将其自身转义:"\"
。 \
在常规引用的字符串中是 the escape character,所以用 \
转义。或者您可以使用不允许转义序列的长字符串语法,正如已经指出的那样:[[\]]
.
百分比只是用作 pattern 的字符串中的转义字符,因此它在 string.find
的第二个参数中的神奇字符 ^$()%.[]*+-?
之前使用, string.match
、string.gmatch
、string.gsub
、%%
在string.gsub
的第三个参数中表示%
。
百分比仍然存在于存储在内存中的字符串中,但是反斜杠转义序列被替换为相应的字符。当字符串存储在内存中时,\
变为 \
,如果使用 string.gsub
计算字符串 "\"
中反斜杠的数量,它只会找到一个:select(2, string.gsub("\", "\", ""))
returns 1
.