Получение строки поискового запроса — Python Script для Notepad++

Я пытаюсь автоматизировать удаление некоторого текста в HTML-коде, который редактирую в Notepad++, для этого я использую плагин PythonScript. У меня только одна проблема: я хочу удалить, например, все <center>, кроме первого. Я думал, что могу использовать эту функцию:

Editor.rereplace("search", "replace"[, flags[, startPosition[, endPosition[, maxCount]]]])

Поскольку я не хочу удалять первый термин, я мог бы установить startPosition на одну строку после строки с первым термином. ищу. Возможно, эта функция research поможет найти решение:

Editor.research(search, matchFunction[, flags[, startPosition[, endPosition[, maxCount]]]])

Но я не могу найти какую-либо функцию, связанную с .research, которая могла бы мне помочь.


person Axel Ricard    schedule 29.06.2015    source источник
comment
Похоже, вы могли бы написать регулярное выражение для передачи Editor.research(), которое будет соответствовать всему, включая первую новую строку. Editor.research() == (R(regular)E(xpression)Search) Я верю.   -  person martineau    schedule 29.06.2015


Ответы (1)


matches = []
def match_found(m):
    # append the match start position to the matches array
    matches.append(m.end(0))

editor.research('pattern', match_found)

matches[0]  #should now contain the index of the *end* of the first match

m.end() так как вы хотите использовать конец совпадения как начало следующего поиска

person RaGe    schedule 29.06.2015
comment
Еще раз спасибо за ваше время RaGe, это работает просто отлично. :) - person Axel Ricard; 30.06.2015