[SOLVED] Взять нужный кусок из url-а

Hannes

Client
Регистрация
03.02.2016
Сообщения
503
Благодарностей
248
Баллы
43
Доброго субботнего дня!

Столкнулся с необходимость вырезать из урла последний транслит, который стоит после последнего слеша и до .html

т.е в урле:
http://сайт.ru/the-123-of-748-548-top.html
нужно получить: the-123-of-748-548-top

а в урле:
http://сайт.ru/категория/подкатегория/translit.html
нужно получить: translit


Что пробовал:
В конструкторе создавал регулярку:
Перед искомым текстом стоит / после .html, ставил и не ставил шалку с самым коротким совпадением. Не помогает, начинает захватывать с самого первого слеша, а нужно с последнего.

Собственно, сжатый вопрос: какая регулярка позволит брать с последнего совпадения и есть ли такая возможность вообще? Спасибо!
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
19 627
Благодарностей
8 768
Баллы
113
Доброго субботнего дня!

Столкнулся с необходимость вырезать из урла последний транслит, который стоит после последнего слеша и до .html

т.е в урле:
http://сайт.ru/the-123-of-748-548-top.html
нужно получить: the-123-of-748-548-top

а в урле:
http://сайт.ru/категория/подкатегория/translit.html
нужно получить: translit


Что пробовал:
В конструкторе создавал регулярку:
Перед искомым текстом стоит / после .html, ставил и не ставил шалку с самым коротким совпадением. Не помогает, начинает захватывать с самого первого слеша, а нужно с последнего.

Собственно, сжатый вопрос: какая регулярка позволит брать с последнего совпадения и есть ли такая возможность вообще? Спасибо!
([^/]+(?=\.html))

upload_2016-7-16_15-32-20.png
 
  • Спасибо
Реакции: Hannes

Hannes

Client
Регистрация
03.02.2016
Сообщения
503
Благодарностей
248
Баллы
43
Вариант sergodjan66 сработал, регулярка ZennoScript выдает пустые строки.

Спасибо Вам! Невероятно быстрый отклик! Очень помогли! :-)
 
  • Спасибо
Реакции: Sergodjan

ZennoScript

Moderator
Регистрация
04.03.2011
Сообщения
4 450
Благодарностей
1 883
Баллы
113
  • Спасибо
Реакции: Hannes

Hannes

Client
Регистрация
03.02.2016
Сообщения
503
Благодарностей
248
Баллы
43
Вы правы, скопировал с пробелом.
Спасибо Вам!
 

booms1

Client
Регистрация
20.08.2019
Сообщения
135
Благодарностей
18
Баллы
18
Добрый день, не могли бы подсказать регулярку которая возьмёт значения идущие после последнего слеша
Пример:
исходные строки
1.https://belpodium.ru/files/products/532/734322-3.jpg
2.https://belpodium.ru/files/products/532/734322-3.png
3.https://belpodium.ru/files/products/532/734322-3.JPG
4.https://belpodium.ru/files/products/532/734322-3.PNG
(конец файла (расширение) не знаю)

Нужно получать
734322-3.jpg
734322-3.png
734322-3.JPF
734322-3.PNG
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
19 627
Благодарностей
8 768
Баллы
113
Добрый день, не могли бы подсказать регулярку которая возьмёт значения идущие после последнего слеша
Пример:
исходные строки
1.https://belpodium.ru/files/products/532/734322-3.jpg
2.https://belpodium.ru/files/products/532/734322-3.png
3.https://belpodium.ru/files/products/532/734322-3.JPG
4.https://belpodium.ru/files/products/532/734322-3.PNG
(конец файла (расширение) не знаю)

Нужно получать
734322-3.jpg
734322-3.png
734322-3.JPF
734322-3.PNG
52313
 
  • Спасибо
Реакции: luk911 и booms1

ant

Client
Регистрация
11.06.2016
Сообщения
18
Благодарностей
3
Баллы
3

Mikhail B.

Moderator
Регистрация
23.12.2014
Сообщения
14 344
Благодарностей
5 433
Баллы
113
  • Спасибо
Реакции: ant

backoff

Client
Регистрация
20.04.2015
Сообщения
5 936
Благодарностей
6 401
Баллы
113
ку, подскажите

имеем
c:\ZennoPoster\projects\papka\papka2\papka2\data\profiles\papka3\papka4\fB8zminlUd.zpprofile
надо взять только это (выделено жирным)
c:\ZennoPoster\projects\papka\papka2\papka2\data\profiles\papka3\papka4\fB8zminlUd.zpprofile
как это реализовать, если не прикрепляться к названиям папок и прочим?
я вижу
привязку к последнему слешу и точке, но не могу составить правильно

хельп
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
19 627
Благодарностей
8 768
Баллы
113
ку, подскажите

имеем
c:\ZennoPoster\projects\papka\papka2\papka2\data\profiles\papka3\papka4\fB8zminlUd.zpprofile
надо взять только это (выделено жирным)
c:\ZennoPoster\projects\papka\papka2\papka2\data\profiles\papka3\papka4\fB8zminlUd.zpprofile
как это реализовать, если не прикрепляться к названиям папок и прочим?
я вижу
привязку к последнему слешу и точке, но не могу составить правильно

хельп
Регулярка: ([^\\]+(?=\.))

80864
 
  • Спасибо
Реакции: Hannes, doc и backoff

backoff

Client
Регистрация
20.04.2015
Сообщения
5 936
Благодарностей
6 401
Баллы
113

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
19 627
Благодарностей
8 768
Баллы
113
  • Спасибо
Реакции: Hannes и backoff

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)