我有一个巨大的.json文件,里面有一百万行,并希望从我的文件中删除如下所示的行。我应该怎么做呢?我曾尝试使用以下内容,但只有在采用以下格式时才会删除小时数:“小时”:{} 我应该如何修改我的正则表达式以删除此行上的所有内容?谢谢!
我的正则表达式:"hours": \{.*?\}
我想在JSON中删除的代码块:
"hours": {"Monday": {"close": "19:00", "open": "10:00"}, "Tuesday": {"close": "19:00", "open": "10:00"}, "Friday": {"close": "19:00", "open": "10:00"}, "Wednesday": {"close": "19:00", "open": "10:00"}, "Thursday": {"close": "19:00", "open": "10:00"}, "Sunday": {"close": "18:00", "open": "11:00"}, "Saturday": {"close": "19:00", "open": "10:00"}}
谢谢!
答案 0 :(得分:0)
您可以在模式中使用子例程调用来递归"hours":\s*(\{(?>[^{}]++|(?1))*\})
子模式:
"hours":
请参阅regex demo
模式说明:
\s*
- 字面顺序“”小时“:(\{(?>[^{}]++|(?1))*\})
- 零个或多个空格(?1)
- 将使用{
子例程调用递归的组1(因此,将确保递归)。这将匹配{
,然后是}
和(?1)
以外的1个或多个字符或整个第1组子表达式(使用}
),然后是结束$.ajax({
url : contentURL,
type : "GET",
dataType : "html",
success : function(response){
$content.append(response);
$activeSection = $('#'+href); // appended element
$activeSection.addClass("open"); // class is added before appending
}
});