Это надежно, быстро и безопасно.
Необходимо будет оценить, является ли это хорошим соответствием для требований.
Я бы попробовал без скобок вокруг \ d, квадратные скобки обычно используются либо для смежных символов, либо для чисел , ваши скобки говорят, что соответствует либо символу '\' или 'd'
"^(.*)(\d{10})\.(min\.)?(css|js)$"
Кроме того, вы специально сохраняете информацию о группе, которую собираете, внутри скобок?
Для ясности в комментариях ниже.
Начните с простого .
"^.*[0-9]*\.css$"
"^.*[:digit:]*\.css$"
"^.*\d*\.css$"
В зависимости от того, что работает, используйте эту базу для цифр и расширьте, как показано ниже.
"^.*\d{10}\.(min\.)?(css|js)$"
Если вы также сопоставляете http / https, вы можете начать его с http / s, указанного ниже, не забудьте изменить в зависимости от используемой цифровой записи.
"^http(s)?://.*[0-9]{10}\.(min\.)?(css|js)$"