@kirillleogky

Как удалить всё символы до первого / с конца?

Как из такой строки
"/siparis/kampanyalar/tumu/cok-karisik-orta-firsati"
сделать такую
"/siparis/kampanyalar/tumu"

Или из такой
"/siparis/kampanyalar/tumu/karisik-ort"
такую
"/siparis/kampanyalar/tumu"
?

Как в общем удалить все после последнего / и включая сам слэш?
  • Вопрос задан
  • 84 просмотра
Решения вопроса 1
@Lorelin
Student web
раздели строку на несколько (используй для разделителя '/')
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
Seasle
@Seasle Куратор тега JavaScript
\( ゚ヮ゚)/
const expression = /.+(?=\/)/;
const array = [
  '/siparis/kampanyalar/tumu/cok-karisik-orta-firsati',
  '/siparis/kampanyalar/tumu/karisik-ort',
  '/siparis'
];

for (const entry of array) {
  const match = entry.match(expression);
  const parsed = match !== null ? match[0] : null;
  
  console.log(parsed);
}
/*
'/siparis/kampanyalar/tumu'
'/siparis/kampanyalar/tumu'
null
*/
Ответ написан
sergiks
@sergiks Куратор тега JavaScript
♬♬
Можно через метод строки lastIndexOf() искать последнее вхождение слеша в строку:
const dirname = (str) => {
  const pos = str.lastIndexOf('/');
  if (-1 === pos) return str;
  return str.substring(0, pos);
}

dirname('/siparis/kampanyalar/tumu/cok-karisik-orta-firsati')
// /siparis/kampanyalar/tumu
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
Artezio Нижний Новгород
от 130 000 до 180 000 ₽
Artezio Москва
от 160 000 до 220 000 ₽
XPOWER Одесса
от 3 000 до 5 500 $