СА
Серёга Ашихин

Регулярными выражениями при поиске и замене в автомате этого не сделать.
Я пользуюсь в подобных случаях скриптами. Например такой скрипт для нумерации:

# -*- coding: utf-8 -*-
#Скрипт MyReNum для Notepad++ заменяющий заданный повторяющийся текст нумерацией
import sys
import string
import re
# Получаем выделенный фрагмент документа
text = editor.getSelText()
isSelection = True
# Если фрагмент не выделен, то работаем со всем документом
if not text:
isSelection = False
text = editor.getText()
# Выдаём запрос на ввод "текста" для поиска и нумерации
countStartFrom = ''
while countStartFrom == '':
countStartFrom = notepad.prompt('Введите текст для поиска и последующей нумерации\n(метасимволы . $ * + ?{} [] \ | ( ) вводятся в скобках [ ]):', 'Python Script MyReNum', '')
if countStartFrom == None:
del sys.modules['MyReNum']
countStartFrom = str(countStartFrom)
txt = countStartFrom
txt = re.compile(countStartFrom)
countStartFrom = re.compile(countStartFrom)
#Находим количество повторений "текста" в документе
occurrencesCount = len(re.findall(countStartFrom, text, flags = 0))
#Если "текст" не найден, то выводим сообщение
if occurrencesCount == 0:
notepad.messageBox('Текст не найден!','Python Script MyReNum', MESSAGEBOXFLAGS.ICONEXCLAMATION)
#Если "текст" присутствует, то
else:
countStartFrom = ''
#Выдаём запрос до тех пор, пока не будет введено число
while not countStartFrom.isdigit():
countStartFrom = notepad.prompt('Введите число, с которого должна начинаться нумерация:', 'Python Script MyReNum', '1')
if countStartFrom == None:
break
if countStartFrom != None:
#Переводим countStartFrom из строки в целочисленный тип
countStartFrom = int(countStartFrom)
# Функция, возвращающая возрастающие числа
def addNumber(matchobj):
global countStartFrom
countStartFrom += 1
return str(countStartFrom-1)
#Заменяем все найденные "тексты" на нумерованные числа
text = re.sub(txt, addNumber, text, flags=0)
#Заменяем обработанной строкой выделение или весь документ
if isSelection:
editor.replaceSel(text)
else:
editor.setText(text)

Это питоновский скрипт подключаемый в плагины Notepad++. Если будут вопросы как его подключить пиши мне на почту.

PS Все отступы в тексте скрипта сбились, а Питон этого сильно не любит!

Похожие вопросы
Регулярные выражения
Помогите с регулярным выражением.. . )))
помогите с регулярным выражением
как найти в тексте IP адреса с помощью notepad++ и регулярных выражений
Нужно заменить фразу регулярного выражения в notepad++
Помогите с регулярными выражениями...
Регулярные выражения Notepad++ (подскажите, пожалуйста)
регулярное выражение (notepad++)
Помогите с регулярным выражением (preg_match_all)
Помогите изменить регулярное выражение!