Паттерн: вытянуть значение из 4 цифр сразу после слова "хор" - VBA
Формулировка задачи:
подскажите пожалуйста, правильный паттерн, который бы вытягивал значение из 4 цифр сразу после слова хор (наглядно прилагаю табличку, у меня ненужная последняя буква слова вышла и пробел)
| правильный результат | то что сейчас выводит | |
| хор 123456 | ||
| хор 123456 ьтьи 1235 | ||
| хор 12345678 1234 | ||
| 123 хор 2586 | 2586 | р 2586 |
| тор 12568 | ||
| хор 4444 | 4444 | р 4444 |
| хорт 5555 | ||
| хорп 5556 хор 3333 1111 | 3333 | р 3333 |
Решение задачи: «Паттерн: вытянуть значение из 4 цифр сразу после слова "хор"»
textual
Листинг программы
Sub pr5()
Dim x As Range
With CreateObject("vbscript.regexp")
.Pattern = "(хор )\d{4}(\D|$)"
For Each x In Selection
If .test(x) Then x.Offset(, 1) = Split(.Execute(x)(0))(1)
Next
End With
End Sub