RegExp: проверка корректности диапазона
От: DrTrevol  
Дата: 02.06.05 17:17
Оценка:
Проблема в следующем:
существует набор строк в формате "десятичное число"+"дефиз"+"десятичное число" (например, "123-456", "67-10" и т.д).
Помогите составить регулярное выражение для отбора строк, у которых первое число строго больше второго. Необходимо именно рег. выражение, т.к. исходная задача пошире, а стопор — на сравнении границ диапазонов.
Re: RegExp: проверка корректности диапазона
От: DrTrevol  
Дата: 02.06.05 17:19
Оценка:
Заранее благодарен.
Re: RegExp: проверка корректности диапазона
От: Кодт Россия  
Дата: 02.06.05 18:45
Оценка: 1 (1) +1
Здравствуйте, DrTrevol, Вы писали:

DT>существует набор строк в формате "десятичное число"+"дефиз"+"десятичное число" (например, "123-456", "67-10" и т.д).

DT>Помогите составить регулярное выражение для отбора строк, у которых первое число строго больше второго. Необходимо именно рег. выражение, т.к. исходная задача пошире, а стопор — на сравнении границ диапазонов.

Если есть регекспы, то есть и среда для их исполнения (перл, пхп, Си наконец). А если есть и среда — то почему бы не возложить эту проверку на неё? Регекспами фильтровать все строки с парой чисел, а к отфильтрованным (ко всем сразу или поштучно) приложиться руками.
Перекуём баги на фичи!
Re[2]: RegExp: проверка корректности диапазона
От: fAX Израиль  
Дата: 06.06.05 01:43
Оценка:
Здравствуйте, Кодт, Вы писали:

К>Если есть регекспы, то есть и среда для их исполнения (перл, пхп, Си наконец). А если есть и среда — то почему бы не возложить эту проверку на неё? Регекспами фильтровать все строки с парой чисел, а к отфильтрованным (ко всем сразу или поштучно) приложиться руками.


Согласен. К тому же, не факт, что вообще возможно написать такой регексп, не зная заведомо длины чисел. А если и можно, то получится ну очень громоздко. Для примера, можно попробовать написать более простой регексп, для фильтрации диапазона чисел от 1234 до 56789 . После этого решение, указанное Кодтом, сразу покажется и правильным, и милым.
...Complex problems have simple, easy-to-understand wrong answers...
(Grossman's Misquote of H.L.Mencken)
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.