Регулярные выражения NotePad++

Как заменить первые два символа, оставив остальное

Текст:

ФИО-231-RAMA-1232;ФИО-241-RAMA-1232;ФИО-255-RAMA-1232… (еще миллион похожих)

Мы хотим в нем заменить -231- на  -331-, -245- на -345- и так далее. Т.е. только первое число в сопадении с регуляркой. 

Мы можем найти -231- с помощью регулярки: 

-\d{3}-   выбрать текст из трех цифр между двумя тирешками. 

Но как поменять только первый символ, оставив остальные без изменений? 

Для этого нам нужно разбить поиск на токены, и оставить один из них без изменений, заменив другой:

-(\d{1})(\d{2})-  Это регулярное выражение так же найден нашу строку. Но теперь у нас есть два токена и с помощью выражения

-3$2- этим выражением мы избавляемся от первого токена, и оставляем только второй, в итоге строка превращается в:

ФИО-331-RAMA-1232;ФИО-341-RAMA-1232;ФИО-355-RAMA-1232… (еще миллион похожих)

 

Немного подробнее по теме: https://www.tutorialsteacher.com/regex/substitution

Поиграться с токенами: https://regex101.com