Автор Тема: Поиск-замена одного вхождения из множества (условия ИЛИ)  (Прочитано 289 раз)

Оффлайн Reader

  • Посетитель форума
  • Сообщений: 2
Добрый день!
Пытаюсь через поиск/замену привести написание суммы прописью вида "(Пять тысяч сто двадцать пять) рублей 23 копейки к виду "(Пять тысяч сто двадцать пять и 23/100) рублей.

Встречается еще 2 олдскульные разновидности написания с закрывающей скобкой после "рублей", либо после "копеек", а также их подварианты с "коп.".

Желательно сделать замену для каждого вида одной операцией с рег.выраженями, а не дробить на несколько.
Проблема с ловлей падежей.

Делаю так:

Find: "\) {1;}руб[.ейлья]{1;4} {1;}([0-9]{1;2}) {1;}коп[.аеийку]{1;3}"
Replace: " и \1^0047100) рублей")
Но он работает не полностью корректно, скорее это плохой костыль.

В идеале был бы поиск вида
" {1;}рубл[ейья]{1;2} {1;}([0-9]{1;2}) {1;}копе(ек|йки|йка)\)"

но видимо WORD такой оператор (альтерации) не признает.
Существует ли решение? Если да, то могло бы помочь в огромной кол-ве других случаев

Заранее благодарю!

 

Оффлайн Администратор

  • Administrator
  • Сообщений: 2029
Да, в Ворде нет спецсимвола "|", чтобы использовать выражение "или".
Значит ваше задание не решаемо с помощью стандартного средства "Найти и заменить".