首页 > 解决方案 > 用 Lua 表结构解析字符串

问题描述

我有一个具有这种结构的字符串(它是 Lua 表)

{['Name1']={score=235,x=6,y=88},['Name2']={score=112,x=12,y=55},['Name3']={score=15,x=15,y=56},}

为了便于阅读:

{['Name1']={score=235,x=6,y=88},
['Name2']={score=112,x=12,y=55},
['Name3']={score=15,x=15,y=56},} <--there might be more entries than these three of course

我需要为每个名称找到值 Name1、score、x 和 y。

我相信正则表达式可以做到,但我不擅长使用它。因此,如果有经验丰富的人给我一些模式,我会很高兴。

标签: phpregexparsing

解决方案


你可以使用一些在线工具来测试你的正则表达式,比如这个

你也可以让你更容易,而不是使用正则表达式并用这个子字符串“},[”分割字符串,你会得到一些带有子字符串的值数组:

0 -> {['Name1']={score=235,x=6,y=88 
1 -> 'Name2']={score=112,x=12,y=55
2 -> 'Name3']={score=15,x=15,y=56},}

然后你也可以用"]={"分割每个条目,你将拥有

0.0 -> {['Name1'
0.1 -> score=235,x=6,y=88 
1.0 -> 'Name2'
1.1 -> score=112,x=12,y=55
2.0 -> 'Name3'
2,1 -> score=15,x=15,y=56},}

... 等等...

这不是一个很好的解决方案,但它可以帮助您在没有正则表达式的情况下完成任务。


推荐阅读