【发布时间】:2015-09-13 14:55:59
【问题描述】:
我正在尝试自动删除我在 Notepad++ 上编辑的 HTML 代码中的一些文本。我发现插件“Python Script”会是一个不错的选择。
在我看来,我应该使用 Editor.rereplace,如下所示:
Editor.rereplace(search, replace[, flags[, startPosition[, endPosition[, maxCount]]]])
唯一的问题是我想使用可选参数“maxCount”而不是“flags”、“startposition”和“endposition”
我试过这样编码:
Editor.rereplace("old", "new", maxCount=1)
这行不通,我猜是因为它不是真正的 Python,而是 Scintilla 语言。因此,我查看了 Scintilla 文档,在我看来,可选参数在 Scintilla 中“自然”不存在。
【问题讨论】:
-
如果你只是想用另一个字符串替换一个字符串,你真的不需要做 python。 Notepad++ 搜索和替换可以很高兴地为您做到这一点。
-
实际上比这更棘手,我需要替换的不是代码中出现的第一个术语,而是第二个术语。 (最后是第三个,第四个等。如果有的话)我也只需要替换第一个术语,但不需要替换后面的术语。 (这是一个不同的术语)
-
你能举一个输入和输出文本的例子吗?感觉还是有一种更简单的方法来做到这一点。
-
实际上这是一个很长的代码,但我想做的是将我从 MailChimp 获得的两个或多个不同的 html 代码放在一个头中。所以我需要保留第一个 、... 并删除下一个,然后我需要删除第一个 、... 并只保留最后一个。我希望你能得到我想要做的事情
-
那么为什么不只是步骤1:使用查找和替换删除所有出现的
<html></html><body>和</body>,然后步骤2:手动在顶部和底部插入一些标签?
标签: python notepad++ scintilla optional-arguments