Notepad ++范围替换

时间:2013-07-24 03:52:13

标签: python notepad++

我试图用一个值替换几百个不同的值:( example)=

第115242行​​:birth_date =“850.1.1”

第115317行:birth_date =“851.1.1”

第115392行:birth_date =“855.1.1” ......等等。

我想用以下字母替换每一个:birth_date =“451.1.1”

使用替换功能有一种快速简便的方法吗? (假设我不知道任何术语/首字母缩略词/行话)

从本质上讲,我正在尝试替换以下值之间的范围:

birth_date =“600.1.1”和birth_date =“900.1.1”

这是在python中

1 个答案:

答案 0 :(得分:1)

您可以利用正则表达式。范围限制使其变得更加困难,但有2个不同的替换,我认为我们可以管理它。 (复杂性来自于您不想替换900.4.3等值的事实。)

  1. 备份您的文件,只是为了安全。
  2. 打开“替换”对话框,将“搜索模式”更改为“正则表达式”。
  3. 在“查找内容:”中输入birth_date="[678]\d\d\.\d+\.\d+"
  4. 在“替换为:”
  5. 中输入birth_date="451.1.1"
  6. 按全部替换。
  7. 将“查找内容:”更改为birth_date="900\.1\.1"
  8. 按全部替换。
  9. 然后检查以确保它符合您的要求。差异工具可能对此有所帮助。 (您可以将修改后的文件与备份进行比较。)

    由于范围的原因,两个不同的正则表达式是必要的。第一个捕获以678加上任意两个数字开头的内容。第二个句柄处理我们要替换的最后一个值,这是900值中的第一个。