我想在C#中解析一段javascript。
javascript就像
var info1 = {timestamp: "1390678800000",amount: "123",guaranteed: "False"};
var info2 = {timestamp: "1390510500000",amount: "234",guaranteed: "True"};
var info3 = {timestamp: "1390678800000",amount: "123",guaranteed: "False"};我想要的是一个从info2中提取数量的正则表达式。
我有这个大梁
(?<=(info2((\s|=)+){.+amount:\s?")).*(?=",.*)但它不是234美元
234",guaranteed: "True"};var info3 = {timestamp: "1390510500000",amount: "345我怎么才能修好它?
谢谢
发布于 2014-01-23 20:04:21
这是因为在你向前看之前,你有一场贪婪的比赛。添加一个?,以确保.*消耗尽可能少。我也逃过了{。
(?<=(info2((\s|=)+)\{.+amount:\s?")).*?(?=",.*)尽管您可能有RegexOptions.Singleline,因为它无论如何都应该工作(除非所有的info都在实际代码中的同一行上)。
如果可能的话,我建议使用JSON解析器,而不是使用regex。
https://stackoverflow.com/questions/21318128
复制相似问题