我有正则表达式模式的问题。我使用非贪婪的。*?,但它似乎也很贪心?你能帮帮我吗?
的myString:
myString = '{"testname":"mytest","type":{"aaa111":{"url":"http://www.test01.com"},"222bbb":{"url":"http://www.test02.com"},"ccc333":{"url":"http://www.test03.com"}}}';
myPattern:
/"(.*?)":{"url"/g
结果:
testname":"mytest","type":{"aaa111, http://www.test01.com"},"222bbb, http://www.test02.com"},"ccc333
但结果"应该"是:
aaa111, 222bbb, ccc333
答案 0 :(得分:0)
解决此问题的一种方法是确保它不匹配多个"
(双引号)
"([^"]+?)":{"url
https://regex101.com/r/oU6eX4/1
虽然我同意其他评论,但可能有更好的解决方案不涉及正则表达式。