我正在尝试从luaxml模块重建find
函数。我有点卡住了,这是我第一次尝试使用lua。
这就是LuaXML的工作原理:
require('LuaXml');
response= '<?xml version="1.0" encoding="ISO-8859-1"?> \
<GeraeteAntwort AntwortType="Input" RequestID="2" Result="Success"> \
<Output AusgabeDevice="Display"AusgabeResult="Success"></Output> \
<Input Eingabe="Keyboard" EinResult="Success"> \
<InputValue> \
<InString>True</InString> \
</InputValue> \
</Input> \
</GeraeteAntwort>'
local xfile = xml.eval(response)
local xInput = xfile:find("Input")
for k,v in pairs(xInput) do print(k,v) end
使用find函数的结果表,我可以使用input
访问xInput.Eingabe
(如 Eingabe )的属性。现在是棘手的部分。我能做到:
local xIN = xInput:find("InputValue")
它给出了InputValue标记的属性。然后我可以用
访问结果xIN:find('InString')[1]
简短:我也可以查找查找结果。
这是我不知道该怎么做的部分。
我使用XML lib进行解析并尝试修改它。 我将其上传到pastie。
xfile = XL:new()
xfile:from_string(response)
local xInput = xfile:find("Input")
这允许我从Input访问所有属性。但是我无法再找到它来获取InputValue。
我该怎么做?