使用正则表达式对多行进行编辑

时间:2018-08-27 20:08:01

标签: regex

我已经下载了一个sql文件,并想大量替换一些我创建的页面名称。

这是一页的示例: {\"ref\":\"Session_1___Pg1___V2\",\"pageTitle\":null,\"description\":null,\"revealDate\":0,\"gQRef\":null,\"lQRef\":null,\"gQScore\":null,\"lQScore\":null,\"newsfeedDates\":null,\"subtitle\":null,\"pageLinkTitle\":null,\"linkTitle\":null,\"pageBack\":null,\"pagePrint\":false,\"visitedFlag\":null,\"widthPercentage\":0,\"maxWidth\":0,\"thumbnail\":null,\"edit\":null,\"copy\":null,\"delete\":null,\"preview\":null}]}

如何搜索和突出显示每个页面的所有引用,就像上面的Session_1___Pg1___V2一样,而没有选择其他内容。我有数百页需要更改其引用,我认为正则表达式将是最好的处理方法。

我使用了(\"((.*?))\"),但是它将选择引号之间的所有内容。如何只选择页面的ref

1 个答案:

答案 0 :(得分:0)

回首一遍:

(?<=\\"ref\\":\\)"([^"]+)"
  • (?<=\\"ref\\":\\)向后寻找\"ref\":\子字符串。
  • "([^"]+)"匹配",打开捕获组,捕获"以外的任何内容。然后关闭捕获组并匹配"

结果是组:

Group 1.    11-32   `Session_1___Pg1___V2\`

正则表达式演示here