regex взять последнее значение после определенного повторяющегося символа

  • Автор темы Автор темы nussus
  • Дата начала Дата начала
  • Теги Теги
    regex

nussus

Client
Регистрация
19.08.2016
Сообщения
27
Реакции
14
Баллы
3
Устал с поиском решения. Если кому не трудно, напишите регулярку, я думаю это будет многим полезно.
Есть строка сайта: https://www.siterandom.gnu/randomabc/randomcba/randomtext_randomtext_randomtext_randomtext_12345 (после символа _ нужно взять значение 12345)
Собственно нужно вытаскивать данные после самого последнего символа _
А вообще был бы признателен, если поможете вытаскивать не только по последнему совпадению, но и например где-нибудь в центре строки после символа _
Встроенным конструктором pm с лёту не получается (?<=_\d).* это работает не так как нужно, выдает randomtext_randomtext_12345
 
Устал с поиском решения. Если кому не трудно, напишите регулярку, я думаю это будет многим полезно.
Есть строка сайта: https://www.siterandom.gnu/randomabc/randomcba/randomtext_randomtext_randomtext_randomtext_12345 (после символа _ нужно взять значение 12345)
Собственно нужно вытаскивать данные после самого последнего символа _
А вообще был бы признателен, если поможете вытаскивать не только по последнему совпадению, но и например где-нибудь в центре строки после символа _
Встроенным конструктором pm с лёту не получается (?<=_\d).* это работает не так как нужно, выдает randomtext_randomtext_12345
Причем randomtext_ в строке может быть сколь угодно много
 
Устал с поиском решения. Если кому не трудно, напишите регулярку, я думаю это будет многим полезно.
Есть строка сайта: https://www.siterandom.gnu/randomabc/randomcba/randomtext_randomtext_randomtext_randomtext_12345 (после символа _ нужно взять значение 12345)
Собственно нужно вытаскивать данные после самого последнего символа _
А вообще был бы признателен, если поможете вытаскивать не только по последнему совпадению, но и например где-нибудь в центре строки после символа _
Встроенным конструктором pm с лёту не получается (?<=_\d).* это работает не так как нужно, выдает randomtext_randomtext_12345
Причем randomtext_ в строке может быть сколь угодно много
Попробуйте использовать такую регулярку: [^_]+$
 
  • Спасибо
Реакции: nussus
Попробуйте использовать такую регулярку: [^_]+$
Работает, спасибо, но только для одной строки. А если такие строки в списке, как сделать регулярку чтобы все строки обрабатывались в списке?
 
Работает, спасибо, но только для одной строки. А если такие строки в списке, как сделать регулярку чтобы все строки обрабатывались в списке?
Брать строки по очередно и распаршивать как надо. Результат складывать куда нибудь.
 
Последнее редактирование:
Работает, спасибо, но только для одной строки. А если такие строки в списке, как сделать регулярку чтобы все строки обрабатывались в списке?
Действуйте вариантом, который подсказали постом выше.
 

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