fork download
  1. local text = '<Response Status="OK"><Item Name="ZoneID">10001</Item><Item Name="ZoneName">Stua</Item><Item Name="State">0</Item><Item Name="FileKey">2010725</Item><Item Name="NextFileKey">-1</Item><Item Name="PositionMS">0</Item><Item Name="DurationMS">252000</Item><Item Name="ElapsedTimeDisplay">0:00</Item><Item Name="RemainingTimeDisplay">Live</Item><Item Name="TotalTimeDisplay">Live</Item><Item Name="PositionDisplay">0:00 / Live</Item><Item Name="PlayingNowPosition">10</Item><Item Name="PlayingNowTracks">11</Item><Item Name="PlayingNowPositionDisplay">11 of 11</Item><Item Name="PlayingNowChangeCounter">2</Item><Item Name="Bitrate">0</Item><Item Name="Bitdepth">0</Item><Item Name="SampleRate">0</Item><Item Name="Channels">0</Item><Item Name="Chapter">0</Item><Item Name="Volume">0.91</Item><Item Name="VolumeDisplay">91% (-4,5 dB)</Item><Item Name="ImageURL">MCWS/v1/File/GetImage?File=2010725</Item><Item Name="Artist">Brainstorm</Item><Item Name="Album">Scary Creatures</Item><Item Name="Name">Lift Your Eyes to See (Bonus Track)</Item><Item Name="Status">Stopped</Item></Response>'
  2. local pattern = '<Item Name="(.-)">(.-)<'
  3. local map = {}
  4.  
  5. for key,value in string.gmatch(text, pattern) do map[key] = value end
  6.  
  7. for key,value in pairs(map) do print(key,value) end
Success #stdin #stdout 0s 2844KB
stdin
Standard input is empty
stdout
RemainingTimeDisplay	Live
PositionMS	0
ElapsedTimeDisplay	0:00
Name	Lift Your Eyes to See (Bonus Track)
Album	Scary Creatures
Volume	0.91
PositionDisplay	0:00 / Live
FileKey	2010725
Bitdepth	0
NextFileKey	-1
State	0
Chapter	0
PlayingNowPosition	10
Channels	0
Status	Stopped
Artist	Brainstorm
DurationMS	252000
ImageURL	MCWS/v1/File/GetImage?File=2010725
VolumeDisplay	91%  (-4,5 dB)
ZoneID	10001
Bitrate	0
SampleRate	0
ZoneName	Stua
PlayingNowTracks	11
PlayingNowChangeCounter	2
TotalTimeDisplay	Live
PlayingNowPositionDisplay	11 of 11