У мене є рядок з префіксом, за яким перелік принаймні одного, можливо, порожнього суфіксу. Самі суфікси мають префікс двокрапкою. Ні префікс, ні суфікс не повинні містити двокрапки.
Приклад (1) для одного порожнього суфікса:
x:
Приклад (2) для двох порожніх суфіксів ("a" та "b") та одного порожнього суфікса:
x:a::b
The регулярний вираз для цього шаблону є:
([^:]+)(:([^:]*))*
Перший збіг фіксує префікс, а (3 + 2n) -й збіг фіксує суфікси (n = [0,1,2, ...]).
В моїй заміні я хотів би встановити кожен суфікс. Приклад (1) повинен містити:
x
І приклад (2) повинен дати:
xa
x
xb
Як мені потрібно вказати вираз заміни?
Моя проблема полягає в тому, що перша заміна їстьпрефікс. А після цього друга заміна вже не бачить префікса. Я маю зберегти префікс для решти замін. Як це можна зробити?
Відповіді:
1 для відповіді № 1Я думаю, я би вилучив префікс спочатку, а потім зробив заміну другий. Це полегшить читання коду, і його слід легко замінити в цьому пункті.