weranda
@weranda

Как составить регулярное выражения для поиска пути картинки до последнего слеша?

Приветствую.
В текстовом документе много картинок, расположенных по разным папкам и, следовательно, адресам.

Примеры путей (условные):
<img src="http://site.ru/aaa/bbb/ccc/ddd/1-image.jpg" />
<img src="http://site.ru/uuu/eee/iii/ppp/mmm/2-image.png" />
<img src="http://site.ru/rrr/hhh/ttt/ooo//nnn/bbb/image-3.bmp" />
<img src="http://site.ru/vvv/bbb/ccc/yyy//vvv/xxx/zzzimage-4.jpeg" />


Пытался составить с помощью регулярного выражения поиск записей с начала тега IMG до последней косой черты в пути файла, т.е. до начала названия файла изображения, но не получилось, поэтому я здесь) Везде разное количество папок (вложенность изображений), разные названия папок, разные названия изображений и их расширений.

Можно ли с помощью регулярных выражений отловить эти пути так, чтобы искался полный путь до косой черты после которой идет название изображения?

Должно искаться следующее:
<img src="http://site.ru/aaa/bbb/ccc/ddd/
или 
http://site.ru/uuu/eee/iii/ppp/mmm/ (внутри тега IMG)


Подозреваю, что можно, но знаний по регуляркам не хватает. Сейчас как раз читаю книгу Бена Фортры, но такого в ней не нашел.

Подскажите пожалуйста правильное регулярное выражение.
  • Вопрос задан
  • 1397 просмотров
Решения вопроса 2
IonDen
@IonDen
JavaScript developer. IonDen.com
Это можно сделать без регулярок:

var a = "http://site.ru/aaa/bbb/ccc/ddd/1-image.jpg";
var b = a.split("/");
b.length = b.length - 1;
var c = b.join("/") + "/";

console.log(a);
console.log(c);


jsfiddle.net/IonDen/x2zLqj14
Ответ написан
Комментировать
Petroveg
@Petroveg
Миром правят маленькие с#@&ки
Пример
/<img.+src=['"]?([^\s'">]*\/)[^\/\s'">]+\1?/
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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