#asp.net #regex
Вопрос:
Может кто-нибудь помочь мне с регулярным выражением? Я бы вставил свой сюда, но Stackoverflow, похоже, не позволяет этого, поэтому вот скриншот:
Он должен соответствовать любому числу или любым 2 числам, разделенным знаком» -«, а также только первому совпадению.
Комментарии:
1. Это должно быть
^d (?:.d )?(?:s*-s*d (?:.d )?)?$
2. На самом деле атрибут RegularExpressionAttribute допускает только полное совпадение строк, вам не нужны якоря, и вам не нужно беспокоиться о совпадении только первого совпадения.
3. Спасибо, это работает
Ответ №1:
Вы можете использовать
^d (?:.d )?(?:s*-s*d (?:.d )?)?$
Смотрите демонстрацию регулярных выражений.
Подробные сведения:
^
— начало строкиd (?:.d )?
— одна или несколько цифр и необязательная последовательность из a.
и одной или нескольких цифр(?:s*-s*d (?:.d )?)?
— необязательная последовательностьs*-s*
— дефис, заключенный в ноль или более пробеловd (?:.d )?
— одна или несколько цифр и необязательная последовательность из a.
и одной или нескольких цифр
$
— конец веревки.