regex - 如何在 Notepad++ 中使用正则表达式替换字符串,同时保留其一部分

标签 regex notepad++

我有包含多个记录的文件: 例如:

"datetime": "2018-10-10"
"datetime": "2018-10-11"
"datetime": "2019-01-11"
"datetime": "2018-02-15"

我想替换这个字符串,以便我可以保留日期值,所以这样的东西:

"datetime": date("2018-10-10")
"datetime": date("2018-10-11")
"datetime": date("2019-01-11")
"datetime": date("2018-02-15")

我可以使用 "datetime": ".*" 查找上述记录,但仍坚持以上述格式替换它们 感谢帮助

最佳答案

您可以使用

查找内容:("datetime": )(".*")
替换为:\1date\(\2\)

详细信息

  • ("datetime": ) - 第 1 组(替换模式中的 \1):文字 "datetime": 子串
  • (".*") - 第 2 组(替换模式中的 \2): " ,除换行符之外的任何 0+ 个字符,尽可能多,然后是 " (请注意,如果您的内容混合,在这里使用非贪婪模式会更安全,".*?")

请注意()替换模式内部必须转义,因为 Notepad++ 正则表达式替换模式是 Boost 条件替换模式,并且括号在那里是“特殊”的。

enter image description here

关于regex - 如何在 Notepad++ 中使用正则表达式替换字符串,同时保留其一部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54788303/

相关文章:

java - replaceAll 或 regex java 正斜杠

正则表达式 - 匹配第二个字母不是第一个字母且第三个字母是第一个字母的情况

php - 在 Notepad++ 中打开 PHP 所需/包含文件的快速方法

正则表达式使所有字符都位于第一个空格的右侧?

java - java中的正则表达式,非捕获组

Python正则表达式匹配文本后的数字

notepad++ - Notepad++ 中代码折叠的自定义区域

正则表达式删除一行中第一个空格出现之前的所有内容?

git - 在不影响设置的情况下使用 Notepad++ 作为 Git 编辑器

tags - 转到 Notepad++ 中自定义(用户定义)语言中的类似功能的定义