尝试使用notepad ++删除如下所示的行

时间:2016-03-31 16:11:52

标签: json regex replace find notepad++

我有一个巨大的.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"}}

谢谢!

1 个答案:

答案 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 } });

enter image description here