Задать вопрос
@Waksim

Как разбить ссылку на папку и имя файла?

Есть ссылки на файлы, например:

https://toster.ru/foto/cool/432rejfio23.jpg
https://toster.ru/foto/f923jiwe.gif
https://toster.ru/foto/new/1423.png
https://toster.ru/foto/123a.jpg

Надо разобрать их так, чтобы в одну переменную шла папка, где файл находится (https://toster.ru/foto/), а в другую - имя файла (f923jiwe.gif).
  • Вопрос задан
  • 224 просмотра
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
  • Академия Эдюсон
    Fullstack-разработчик на JavaScript + ИИ
    11 месяцев
    Далее
  • ProductStar × РБК
    Профессия: Инженер по тестированию + ИИ
    6 месяцев
    Далее
Решения вопроса 2
DevMan
@DevMan
Ответ написан
Комментировать
0xD34F
@0xD34F Куратор тега JavaScript
JS:

const [ , path, file ] = /(.+\/)([^\/]+)$/.exec(str);

// или

const i = str.lastIndexOf('/') + 1;
const file = str.slice(i);
const path = str.slice(0, i);

// или

const parts = str.split(/(\/)/);
const file = parts.pop();
const path = parts.join('');

PHP:

preg_match('~^(.+\/)([^\/]+)$~', $str, $matches);
list($path, $file) = array_slice($matches, 1);

// или

$i = strrpos($str, '/') + 1;
$file = substr($str, $i);
$path = substr($str, 0, $i);

// или

$parts = preg_split('~(?<=\/)~', $str);
$file = array_pop($parts);
$path = implode('', $parts);
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы