Ищу строку regex, которая позволит мне найти самую правую (если есть) группу цифр в строке. Нас интересуют только смежные цифры. Нам не важны знаки, запятые, десятичные дроби и т.д.. Они, если будут найдены, должны просто рассматриваться как нецифры, как и буквы.
Это нужно для целей замены/инкрементации, поэтому нам также нужно захватить все, что находится до и после обнаруженного числа, чтобы мы могли восстановить строку после увеличения значения, поэтому нам нужен маркерный regex.
Вот примеры того, что мы ищем:
В качестве примера того, что мы хотим, это было бы что-то вроде того, чтобы начать с имени 'Item 4-1a', извлечь '1', а все, что до, было префиксом, а все, что после, было суффиксом. Затем, используя это, мы можем генерировать значения 'Item 4-2a', 'Item 4-3a' и 'Item 4-4a' в цикле кода.
Теперь, если бы я искал первый набор, это было бы просто. Я бы просто нашел первый смежный блок из 0 или более нецифр для префикса, затем блок из 1 или более смежных цифр для номера, затем все остальное до конца было бы суффиксом.
Проблема, с которой я сталкиваюсь, заключается в том, как определить префикс как включающий все (если таковые имеются) числа, кроме последнего набора. Все, что я пытаюсь сделать для префикса, продолжает поглощать последний набор, даже когда я пробовал привязать его к концу, по сути, отменив вышеописанное.