Помогите с ругуляркой :(

  • Автор темы Автор темы sekoan
  • Дата начала Дата начала

sekoan

Client
Регистрация
04.01.2015
Сообщения
220
Реакции
93
Баллы
28
Здравствуйте, давно мучает пару вопросов с регуляркой, было бы очень здорово решить их )
1) К примеру есть текст,
цепь грм дизель 2.3 -800р
салейнтблоки -150р
бендекс 500р
датчик распредвала- двигатель 18nv (рабочий, лежал как запасной)1000 р ну и мелочи на фото...цепь грм дизель 2.3 - 800р
салейнтблоки - 150 р
датчик распредвала- двигатель 18nv (рабочий, лежал как запасной)1000 р ну и мелочи на фото...


В тексте нужно найти значение: 800р, 150р, 500р
также в тексте нужно найти значение: 1000 р, 800 р, 500 р, 150 р

И может кто еще подскажет как пользоваться регуляркой (^[1-9]{1}$|^[1-4]{1}[0-9]{1}$|^50$) - это любое число от 1 до 50 включительно. Добавляю его в экшен, а он в данном примере не находит никакие цифры.
 
\d+р|\d+\sр.*?
 
Сильно, спасибо, теперь мне стало понятно :D
 
А что означает это выражение .*?
 
2015-04-07_084445.png
 
Ребят, как то я не продумал как дальше буду делать, может кто посоветует, мне теперь в тексте нужно заменить
800р
150р
500р
1000 р
на:

800т
150т
500т
1000 т

Я думал сделать это в экшене замена, тогда получается нечто такое:
цепь грм дизель 2.3 -т
салейнтблоки -т
бендекс т
датчик распредвала- двигатель 18nv (рабочий, лежал как запасной)т ну и мелочи на фото...цепь грм дизель 2.3 -т
салейнтблоки -т
 
Операции над списком - получить количество строк - положить в переменную и через замену заменить р на т или в тексте не только цены а и текст другой присутствует?
 
Последнее редактирование:
Операции над списком - получить количество строк - положить в переменную и через замену заменить р на т
Зачем нам получать количество строк? Их 15 строк) в этом примере, что мне потом с этой цифрой делать? Я думаю тут надо сделать так, чтобы замена была сразу с цифрой из списка (фото1)
 

Вложения

  • Безымянный.png
    Безымянный.png
    645,6 KB · Просмотры: 452
не совсем ясно что вам нужно, ибо не ясно выражаетесь (или же мне лень вчитываться).
если вам нужно заменить р на т, при этом чтобы перед р стояли 2 и больше цифр, то нужно так:
(?<=\d{2,})\ *р\.?\b
заменить на т
поиск regex
 
не совсем ясно что вам нужно, ибо не ясно выражаетесь (или же мне лень вчитываться).
если вам нужно заменить р на т, при этом чтобы перед р стояли 2 и больше цифр, то нужно так:
(?<=\d{2,})\ *р\.?\b
заменить на т
поиск regex

Спасибо большое, то что нужно)
 

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