Почему не срабатывает регулярка?

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

gvova

Client
Регистрация
23.11.2010
Сообщения
76
Реакции
23
Баллы
8
Здравствуйте. Помогите пожалуйста разобраться.

Иногда сталкиваюсь с странным явлением.
При тестировании регулярок в "Конструкторе регулярных выражений" , иногда, то что надо не обрабатывается как нужно .

Пример:

Надо выпарсить цену. Вот из этого куска кода

<div class="pi p2 pmoz"><span id="thePrice" class="price reprice reprice147" name="11947">80,00</span>

В данном случае проблема, ибо вначале идут рандомные значения и нормального тега для начала регулярки нет.

Пробую такие варианты:

(?<=">).*(?=</span>)
(?<=">).*?(?=</span>)
(?<=>).*?(?=</span>)
(?<=>).*(?=</span>)

Ничего не работает). Подскажите пожалуйста где косяк, и почему не получается)

1.png


Заранее благодарю за помощь)
 
Не срабатывает, потому что регулярка находит первое совпадение - символ > в строке и от него отталкивается дальше. Первое совпадение в данном случае не перед ценой стоит.
 
  • Оценить
Реакции: gvova
Не срабатывает, потому что регулярка находит первое совпадение - символ > в строке и от него отталкивается дальше. Первое совпадение в данном случае не перед ценой стоит.
Если я правильно понял, то добавляя [0-9] мы обьясняем что нам нужно последнее соответствие?
Сори за нубские вопросы
 
  • Оценить
Реакции: gvova

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