Насколько я знаю, пропустить символ в группе нельзя. (Но могу ошибаться)
Я предлагаю применить /^\w(\d{1,})\.\w(\d{0,2})/ - https://regex101.com/r/aVoTvs/5
И затем просто соединить значения этих групп через точку
Я вижу, что исходное выражение выражается в виде:
буква_B цифры точка буква_C цифры {далее необязательное} буква_D цифры точка буква_E цифры
Сразу возникают вопросы:
Могут ли вместо этих букв быть другие?
Что Делать, если послу букв B и/или C будет много цифр?
Я вижу такой путь решения: s/B(\d{1,2})\d*\.C(\d{1,2})\d*\..*/\1.\2/
Здесь, если цифр много - берутся первые две.