-1

В моем текстовом редакторе у меня есть следующее:

abc1
abc2
asdf3

Я хочу заменить это на:

abc3
abc4
asdf5

Но для того, чтобы сделать это, я должен сделать вычисления в Notepad++, используя регулярные выражения. Как я могу это сделать?

1 ответ1

0

Полагаю, это ваш счастливый день, потому что всего пару часов назад я впервые немного поиграл с плагином Python Script для NP++.

Как уже упоминалось, RE не для математических выражений, потому что они могут быть слишком сложными (и RE не оценивают). Однако, если это не домашняя работа, привязанная к RE, то можно решить, просто попытавшись оценить () каждое поле и записать результат в случае успеха и исходное поле, когда поле не оценивается.

for line in content.splitlines():
    fields = line.split()
    for i in range( len(fields)):
        try:
            result = eval(fields[i])
            if i > 0:
                newcontent += " "
            newcontent += str(result)
        except:
            if i > 0:
                newcontent += " "
            newcontent += fields[i]
    newcontent += "\n"

editor.clearAll()       
editor.appendText( newcontent)  

Я надеюсь, что вы знаете, как использовать плагин Python Script.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .