JavaScript正则表达式:在测试之后获取完整的JSON

时间:2018-01-24 11:38:55

标签: javascript regex

我想解决一个问题:我有一个这样的字符串:

(test){"data":{"test1":true,"test2":0,"test3":false,"test4":"","test5":""},"testarray":[{"value":"test","alt":"test-1"}]}

现在我需要创建一个包含完整JSON的正则表达式。我是这样开始的:

/\(test\)(\{.+?\})/gi

https://regex101.com/r/WySywp/1

但在这里我只得到这个结果:

{"data":{"test1":true,"test2":0,"test3":false,"test4":"","test5":""}

我该怎么做才能获得完整的JSON?

1 个答案:

答案 0 :(得分:0)

你有一个非贪婪的修饰符,所以匹配在遇到第一个}后停止。只需将其切换为贪婪,它将继续匹配:

\(test\)(\{.+\})

https://regex101.com/r/WySywp/2