GET JSON Регулярное выражение с экранированием

Коллеги, добрый день, или уже вечер..или уже ночь.. Помогите пожалуйста, раньше в jsone было прописано вот так:

CheckRegex(response, '(\/\d{2}\/\d{2}\/\d{2}\/\d{2}\/\d{10}\....)', ['path']);

Находились файлы типа:

"ftp://111.111.111.11/09/61/99/37/0961993761.spx"

После имя файла в директории поменялось на:

/09/61/99/37/0961993761_00__00.spx

И я не могу придумать регулярное выражение для нового формата записи файлов. Мои попытки:

'(\/\d{2}\/\d{2}\/\d{2}\/\d{2}\/\d{10}.\d{2}..\d{2}\....)', ['path']);

'(\/\d{2}\/\d{2}\/\d{2}\/\d{2}\/\d{10}_\d{2}__\d{2}\....)', ['path']);

'(\/\d{2}\/\d{2}\/\d{2}\/\d{2}\/\d{10}\_\d{2}\__\d{2}\....)', ['path']);

'(\/\d{2}\/\d{2}\/\d{2}\/\d{2}\/\d{10}\_\d{2}\_d{2}\....)', ['path']);

'(\/\d{2}\/\d{2}\/\d{2}\/\d{2}\/\d{10}\..........)', ['path']);

'(\/\d{2}\/\d{2}\/\d{2}\/\d{2}\/\d{10}\\d{2}\d{2}\....)', ['path']);

'(\/\d{2}\/\d{2}\/\d{2}\/\d{2}\/\d{10}\d{2}\d{2}\....)', ['path']);

'(\/\d{2}\/\d{2}\/\d{2}\/\d{2}\/\d{10}\_\d{2}\__\d{2}\....)', ['path']);

Во всех случаях возвращается: "ftp://111.111.111.11undefined"

В данной теме совсем не давно, если кто знает почему и как помочь, был бы вам премного благодарен. Спасибо большущие!)


Ответы (1 шт):

Автор решения: Vadik

Достаточно добавить _\d\d__\d\d в исходную регулярку, чтобы получилось:

\/\d{2}\/\d{2}\/\d{2}\/\d{2}\/\d{10}_\d\d__\d\d\....

(проверить на regex101)

Кроме этого, регулярку можно написать покороче:

(\/\d\d){4}\/\d{10}_\d\d__\d\d\....

(проверить на regex101)

→ Ссылка