在我们继续之前,我知道已经提供的JSON类。这纯粹是为了我自己的学习。
我今天正在练习我的正则表达式,并想知道为什么这不是分裂或匹配到一个集合。
(s?)(?<=""\d+"":{).+(?=football.*)
{
"100":{
"username":"j123",
"id":10,
"date":2014,
"user":{
"name":"John s",
},
"game":{
"football":33
}
},
"101":{
"username":"j456",
"id":11,
"date":2014,
"user":{
"name":"John t",
},
"game":{
"football":32
}
}
}
}#
某人可以解释我哪里出错了。我不需要足球比赛结果之间的部分。
由于
答案 0 :(得分:0)
+
是一个贪心量词,因此.+
匹配尽可能多的字符,从"100"
到最终"football":32
。
通过使量词 lazy (.+?
),您可以告诉正则表达式引擎尽早结束匹配。
(你可能认为(?s)
允许点匹配换行符。)