【发布时间】:2018-05-21 18:47:44
【问题描述】:
我正在尝试为一个爱好项目编写一个字符串,我是从这个站点的代码片段中自学的,并且很难解决这个问题。希望大家帮忙。
我有一个大字符串,包含很多行,每一行都有一定的格式。
我可以使用此代码获取字符串中的每一行...
for line in string.gmatch(deckData,'[^\r\n]+') do
print(line) end
每一行看起来都像这样......
3x Rivendell Minstrel(寻找咕噜)
我要做的是为上面的行制作一个看起来像这样的表格。
table = {}
table['The Hunt for Gollum'].card = 'Rivendell Minstrel'
table['The Hunt for Gollum'].count = 3
所以我的想法是提取括号内的所有内容,然后提取数字值。然后删除该行中的前 4 个字符,因为它始终是 '1x'、'2x' 或 '3x'
我已经尝试了很多东西......像这样......
word=str:match("%((%a+)%)")
但是如果有空格就会出错...
我的测试代码现在看起来像这样......
line = '3x Rivendell Minstrel (The Hunt for Gollum)'
num = line:gsub('%D+', '')
print(num) -- Prints "3"
card2Fetch = string.sub(line, 5)
print(card2Fetch) -- Prints "Rivendell Minstrel (The Hunt for Gollum)"
key = string.gsub(card2Fetch, "%s+", "") -- Remove all Spaces
key=key:match("%((%a+)%)") -- Fetch between ()s
print(key) -- Prints "TheHuntforGollum"
任何想法如何从那里获取“寻找咕噜”文本,包括空格?
【问题讨论】:
标签: lua