Может ли кто-нибудь дать мне регулярное выражение для числа в диапазоне от 1 до 5

#re&ex

#регулярное выражение

Вопрос:

Может ли кто-нибудь дать мне регулярное выражение для числа в диапазоне от 1 до 5, состоящего из одной цифры

например, ввод должен быть числом от 1 до 5, 55 или 23 не будут совпадать

Комментарии:

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

2. between Означает включительно 1 и 5 (1,2,3,4,5) или исключительно (2,3,4)?

3. Какой тип / движок регулярного выражения? На каком языке программирования? Когда вы говорите «число», вы имеете в виду «целое число»? И обязательно ли это должно быть регулярное выражение? Регулярное выражение — неправильный инструмент для выполнения математики.

Ответ №1:

Попробуйте использовать якоря:

 /^[1-5]$/
  

Объяснение:

^ Начало строки.
[1-5] Цифра от 1 до 5.
$ Конец строки / strin&.

Ответ №2:

Не было бы проще проверить его как число (т. Е. if(x&&t;= 1 amp;amp; x <= 5) или что-то подобное), а не использовать регулярное выражение?

Комментарии:

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

Ответ №3:

Гораздо более лаконично сказать

 if(x&&t; 0 and x<5)
  

ИМХО

Комментарии:

1. Правильно, если between означает исключительные 1 и 5.

Ответ №4:

Возможно, это должно сработать [1-5]

Комментарии:

1. Нет, это не так, поскольку оно соответствовало бы 12345 или 5555 или this5is_not_a_number.

2. @Paul: Нет, оно соответствовало бы 1, 2, 3, 4 и 5 в 12345.

3. @splash, вот в чем проблема — если вы введете в него ‘12345’ или ‘this5is_not_a_number’, он скажет, что оно соответствует, потому что оно соответствует одной части строки. Если вы хотите сделать его эксклюзивным, как было задано в исходном вопросе, то вам нужны якоря, как сказал @Mark Byers.

4. @Paul, вы правы в контексте исходного вопроса, но ваша формулировка it would match 12345 неточна относительно регулярного выражения @Faisal [1-5] . 😉

5. @splash, извините меня за то, что я подумал, что ответ на вопрос должен отвечать «в контексте исходного вопроса».