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 шт):
Достаточно добавить _\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)