有人会告诉我,如何从变量中的文本如下:
>Hello World
text,1000
text2,200
读: 1.行 - 如果在行中是>和行不是50个字符然后读取,如果不是 - 转到下一行 (检查的一部分是:
if string.sub(tekst, 1, 1) == '>' then
...
end
但没有任何关于检查行的长度。
下一行 - 通过","传递文字。并且首先从","之前获取文本。然后从","之后获取文本。到不同的变量(用脚本的另一部分来分析)
我将非常感激
答案 0 :(得分:2)
你不清楚如何处理匹配的字符串(在>和行尾之间),因为read
是通用的,我只是把它放在一个表中。
s=[[
>Hello World
text,1000
>A line that is way too long to fit in this small space won't be accepted in the table.
text2,200
>Some text on the last line]]
t={}
for match in s:gmatch('>([^\n]+)') do
if #match<50 then
t[#t+1]=match
print(match)
end
end
这还取决于哪个字符代表字符串中的line ending。可能性是:\n
(UNIX,Mac和其他健全的世界)或\r\n
(Windows)