Я использую регулярные выражения, чтобы найти очень простые шаблоны.
Однако я хочу вставить между совпадениями символ дефиса.
Я хорошо знаком с написанием шаблонов соответствия RegEx, но не могу использовать замену RegEx для вставки символов.
Мой RegEx:
(\ d {1,2}) ([AZ] {1,3}) (_)? (\ D {3,4})
который Спички:
- 03EM0109
- 03EM0112
- 03EM0151
- 3V204
- 02SDV_0900
Я хотел бы, чтобы на выходе с использованием RegEx Replace вводились дефисы между совпадениями, чтобы дать мне:
- 03-EM-0109
- 03-EM-0112
- 03-EM-0151
- 3-V-204
- 02-SDV-0900
Я попытался изменить RegEx и ввести пронумерованные группы захвата для нулевых шаблонов между ними, но при использовании функции замены это возвращает только дефисы. Предположительно потому, что группа нулевого захвата на самом деле ничего не захватывает?
Использование:
(\ d {1,2}) () ([A – Z] {1,3}) () (_)? () (\ D {3,4})
При замене на 2–4–5 долл. США
возвращает 3 дефиса - - -
Может ли кто-нибудь помочь ....
(\d{1,2})([A-Z]{1,3})_?(\d{3,4})
- ›$1-$2-$3
(демонстрация) - person Wiktor Stribiżew   schedule 12.08.2020