Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
正则表达式字符串中的json对象_Json_Regex_String - Fatal编程技术网

正则表达式字符串中的json对象

正则表达式字符串中的json对象,json,regex,string,Json,Regex,String,我目前正致力于从一个字符串中解析出json对象(很接近),但我的正则表达式无法处理整个字符串中的多个对象 以下是我当前的正则表达式: /(\[{|\{)(?=.)(?: [^*] | (R) )*(\}]|\})/g 这是我的测试字符串。我试图捕获两种类型的对象,{…}和[{…}] 下面是我正在使用的字符串测试字符串 下面是一些json字符串,供正则表达式解析[{“funarray”:[12343, 4] ,“姓名”:“约翰·多伊”,“年龄”:23岁”,“身份证”: “ad14ab20-df9

我目前正致力于从一个字符串中解析出json对象(很接近),但我的正则表达式无法处理整个字符串中的多个对象

以下是我当前的正则表达式:

/(\[{|\{)(?=.)(?: [^*] | (R) )*(\}]|\})/g
这是我的测试字符串。我试图捕获两种类型的对象,
{…}
[{…}]

下面是我正在使用的字符串测试字符串

下面是一些json字符串,供正则表达式解析[{“funarray”:[12343, 4] ,“姓名”:“约翰·多伊”,“年龄”:23岁”,“身份证”: “ad14ab20-df9a-11e7-9ece-3b010fca83e0”,“创建地址:1513124107987}, {“姓名”:“简·多伊”,“年龄”:28岁”,“身份证”: “ad167fe0-df9a-11e7-9ece-3b010fca83e0”,“创建地址:1513124107998}, {“姓名”:“约翰·史密斯”,“年龄:21岁”,“身份证”: “ad16a6f0-df9a-11e7-9ece-3b010fca83e0”,“创建地址:1513124107999}] 这是绳子的末端!但是如果我们在 最后,它不应该捕获中间的字符串。{“funarray”:[12, 343,4],“姓名”:“格雷格·约翰逊”,“年龄”:20岁”,“身份证”: “da54a650-df9a-11217-9ece-3faebe8320”,“创建地址:1513124186254” }.这里的字符串也不应该被捕获


在意识到我最初的问题实际上是javascript的无效正则表达式后,我发现了这一点。答案如下:


(\[{124;\{)(?=)(?:[^.+]|(R))*(\}]|\})(?=)

请参见。@WiktorStribiżew不幸的是,这在我的情况下不起作用,因为我要分析的这些字符串将是日志