Вот исправленная версия вашего кода.Блокировщик, который я видел с твоей стороны, казалось, неправильно понимал, как работает String#format
.Поскольку вы пытаетесь связать более одного заполнителя, я предлагаю просто использовать %s
везде, а затем явно указывать каждую строку.Обратите внимание, что шаблон, который вы хотите использовать для конечного компонента пути для расширения, немного отличается от того, что вы предложили.
String UUID = "([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})";
String EXTENSION = ".*(?:mov|jpg)$";
String pattern = String.format("^customers/%s/areas/%s/orders/%s/invoices/%s/employees/%s", UUID, UUID, UUID, UUID, EXTENSION);
System.out.println(pattern);
^customers/([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})/areas/
([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})/orders/
([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})/invoices/
([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})/employees/.*(?:mov|jpg)$
Перейдите по ссылке ниже для демонстрации работающего регулярного выражения, которая показывает, что вышеуказанный шаблон соответствует вашемутестовый URL.
Демо