Выбрать нужный вариант [вопрос]

Статус
В этой теме нельзя размещать новые ответы.

pastuhoff

Постоялец
Регистрация
11 Июл 2012
Сообщения
59
Реакции
8
Подскажите, плз, как можно из данных вида
created: 2005.07.06
paid-till: 2012.07.06
free-date: 2012.08.06
получить
2012.08.06
Но если поля "free-date" нету, тогда получить данные из "paid-till"
2012.07.06
Это нужно сделать в одном регулярном выражении.
 
paid-till всегда есть, а free-date может быть, а может и не быть? Или paid-till тоже может быть, а может и не быть? И данные всегда идут в таком порядке, или порядок произвольный?
 
Уже решил проблему так (там 4 пробела в ответе хуиза на самом деле)
Код:
/(?<=free-date:|paid-till:) {4}([.0-9]{10})(?!\s*free-date)/
 
/(?<=free-date:|paid-till:) {4}([.0-9]{10})(?!\s*free-date)/
Возможно мелочь, но - точка озночает любой символ, такчто заэкранировать надобыло точку :) [\.0-9]
 
Возможно мелочь, но - точка озночает любой символ, такчто заэкранировать надобыло точку :) [\.0-9]
В квадратных скобках точку экранировать не требуется, она там выступает именно как точка, а не любой символ.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху