Попробуйте этот шаблон: (?=\b.*(?:\d[^\d\s]*){5,})\S*
Пояснение:
(?=...)
- позитивный взгляд, обеспечивающий совпадение шаблона внутри него:)
\b
- граница слова
(?:...)
- группа без захвата
\d[^\d\s]*
- соответствует цифре \d
, затем соответствует нулю или более любых символов, кроме пробела \s
или цифры \d
{5,}
- соответствует предыдущему шаблону 5 или более раз
\S*
- соответствует нулю или более любых символов, кроме пробела, чтобы соответствовать строке, если утверждение верно, но я думаю, что вам просто нужно утверждение:)
Демо
Если вам нужны только последовательные числа, используйте упрощенный шаблон (?=\b.*\d{5,})\S*
.
Еще одна демка
Конечно, вы должны добавить положительный вид сзади: (?<=Name=)
, чтобы утверждать, что у вас есть Name=
строка, предшествующая