0

我想用正则表达式解析这个 json 数据。但是,我做不到。我试过这样module.getid(.*),但没有工作。

只是,我想参加这部分->module.getid(...)

module.getid([{"id":"44423"}]); module.getresult([{"result":"false"}]);

我该怎么做?

4

2 回答 2

1

如果您想捕获第一个(演示),请尝试此操作:

/module.getid\((.*?)\); *module.getresult(?:.*?)\);$/m

如果要捕获两个json字符串(demo):

/module.getid\((.*?)\); *module.getresult(.*?)\);$/m
于 2013-07-10T10:44:11.040 回答
0

好吧,从你给我们的那个新字符串开始工作:

module.getid([{"id":"44423", "code":"mod_editor"}]);

这是一个正则表达式,可以很好地划分提供的行中的所有数据

m/module\x2egetid\x28\x5b\x7b\x22(?<key1>[^\x22]+)\x22\x3a\x22(?<value1>\d+)\x22\x2c\s+\x22(?<key2>[^\x22]+)\x22\x3a\x22(?<value2>[^\x22]+)\x22/

您可以使用命名的捕获或捕获的编号来引用这些字段,无论您喜欢哪个。

在这种情况下,仅返回此字符串中为 44423 的数据部分,您可以引用捕获编号“2”或捕获名称“value1”。

我不确定您使用哪种语言来“解析”这些数据,因此我无法为您提供实际的工作代码片段。

于 2015-08-24T23:28:44.813 回答