Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/14.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 Regex查找冒号未加引号或逗号未加引号的时间_Json_Regex - Fatal编程技术网

Json Regex查找冒号未加引号或逗号未加引号的时间

Json Regex查找冒号未加引号或逗号未加引号的时间,json,regex,Json,Regex,我研究Regex已经两个小时了,但无法找到第一条和第三条记录: "name":value", "name":"value", "name":"value, 我尝试了很多东西,但最近一次尝试失败了: [!^:"]|[^",] 有谁能给我指点一下如何做到这一点? 考虑到这一点,理想的做法是能够在“我的数据”中搜索字符“被找到4次”的记录。对于示例数据,您可以使用一个替代选项来匹配开头或结尾为“” 部分地 “[^”\r\n]+“使用 :匹配: (?:非捕获组 [^”\r\n]+“匹配除“之外的

我研究Regex已经两个小时了,但无法找到第一条和第三条记录:

"name":value",
"name":"value",
"name":"value,
我尝试了很多东西,但最近一次尝试失败了:

[!^:"]|[^",]
有谁能给我指点一下如何做到这一点?
考虑到这一点,理想的做法是能够在“我的数据”中搜索字符“被找到4次”的记录。

对于示例数据,您可以使用一个替代选项来匹配开头或结尾为“

部分地

  • “[^”\r\n]+“
    使用
  • 匹配
  • (?:
    非捕获组
    • [^”\r\n]+“
      匹配除
      之外的任何字符,然后匹配
    • |
    • “[^\r\n”]+
      匹配
      ,然后匹配除
      以外的任何字符
  • (?:,|$)
    匹配逗号或断言字符串的结尾

您使用的语言是什么?您打算用什么替换?您的意思是“冒号后面没有引号时?”“?不是答案,但是如果你手上弄坏了JSON,只需返回源代码并修复它。没有太多的理由自己尝试检测它,让解析器自己失败。我使用的是JSON,我想查找值中缺少第一个引号和/或两个引号的数据。@deucalion0:Does
[:,](?!“|$)
对你有用吗?谢谢你的回答,这对我不太有效,你能提供一些帮助来搜索每一行并找到包含4个引号的行吗?@deucalion0此模式将匹配包含4个引号的整行,或者尝试在初始模式上使用锚定
https://regex101.com/r/bDLH1q/1
非常好,谢谢,这对这对我来说是一个很大的帮助。快速提问,你知道有没有办法反转此模式,以便它找到所有没有4个引号的字符串?这可能非常有用。谢谢!@deucalion0要反转它,你可以使用反向前瞻
"[^"\r\n]+":(?:[^"\r\n]+"|"[^\r\n"]+)(?:,|$)