我在这里很新,我希望我可以解释我的问题。
我有一个像这样的字符串: “{sometext {'id':123,'email':'email1','pass':'pass1'},someothertext:{'id':456,'email':'email2','pass':'pass2 “}}“
我想创建一个这样的数组: 数组([0] =>'id':123,'email':'email1','pass':'pass1'[1] =>'id':456,'email':'email2','通过 ':' PASS2' )
我找不到正则表达式来执行此操作... :(
好吧,如果我可以使用$ arr [0] [0]访问第一个id,首先使用$ arr [0] [1]等电子邮件等等,这会好得多。
有人可以帮我吗? 非常感谢
答案 0 :(得分:2)
您描述的输入字符串似乎是JSON格式。有很多库可以用各种语言读取JSON数据,请看:http://www.json.org/
答案 1 :(得分:0)
这个正则表达式可以帮助
{(?:'([^']*)':([^,]*),?)*}
第一组将包含“id”,第二组将包含“123”
请注意,如果使用1个正则表达式执行此操作,则需要一个支持同一组中多个捕获的正则表达式引擎。 .NET正则表达式引擎可以做到这一点。
如果不是,你需要每次使用正则表达式进行2次传递。让我知道你对这个答案的了解程度。