我在MySQL中存储了一个json,我想使用regex查找匹配项。我试图通过用REGEXP而不是LIKE构建一个查询来实现这一点。
{"type":"4","Record channels HDCVI":{"1":"4","3":"16"},
"Supported standarts HDCVI DVR":{"0":"HDCVI","2":"IP","3":"AHD","4":"Analog"},
"Record resolution HDCVI DVR":{"1":"FullHD 1080p"},
"HDD amount":{"1":"2","2":"4"},
"Specs HDCVI DVR":{"0":"2x HDMI","1":"TV-out","2":"Videoanalytics","3":"eSATA","5":"RS-485"}}
例如,我需要用4个记录通道HDCVI获取所有记录。
所以,我的想法是寻找这样的子串:
"Record channels HDCVI":{" ... :"4" ... "}
而不是三个点应该有像任何字符数量的占位符,但这个表达式应该以第一个匹配的右大括号结束。
这将选择HDD amount部分下最后4“}的子字符串。想不出来。
/Record channels HDCVI.+"4"}/g
最佳答案
你应该这样做:/"Record channels HDCVI:{[^}]+:"4"/g