Ваш шаблон не соответствует 3-й и 4-й части данных примера, потому что в этой части \w+\-?\.?(\d+)?
тире и цифры совпадают только один раз и не повторяются.
Для данных примера выможет использовать класс символов [\w.-]+
для сопоставления части после двоеточия, чтобы сделать сопоставление более широким:
<(\w+\:[\w.-]+)>
Regex demo | C # demo
Или, чтобы сделать его более конкретным, задайте шаблон либо для части Node.03
, либо для части года, даты, часа и т. Д., Используя повторный шаблон.
<(\w+\:\w+(?:\.\d+|\d+(?:-\d+)+)?)>
Пояснение
<
Матч <
(
Группа захвата \w+\:\w+
Матч 1+символы слова, :
и 1+ слова слова (?:
группа без захвата \.\d+
совпадение .
и цифры 1+ |
или \d+(?:-\d+)+
Совпадение цифр 1+ и повторение совпадений 1+ раз -
и цифр 1+
)?
Закрыть группу без захвата и сделать ее необязательной
)
Закрыть группу захвата >
Regex demo | C # Демо