【发布时间】:2010-11-27 09:19:47
【问题描述】:
我需要一个接受以下输入的正则表达式
1 天
4 天
15 天
1 个月
12 个月
1 年
5 年
数字可以有任意长度。有什么想法吗?
【问题讨论】:
-
有什么目的?你想得到数字吗?您想强制执行特定的输入格式吗?字符串可以合并吗?请添加有关预期输入和输出的更多信息。
标签: php regex validation
我需要一个接受以下输入的正则表达式
1 天
4 天
15 天
1 个月
12 个月
1 年
5 年
数字可以有任意长度。有什么想法吗?
【问题讨论】:
标签: php regex validation
试试这个,
^(1 (Day|Month|Year)|[1-9][0-9]* (Days|Months|Years))$
它不会接受我认为无效的输入,例如“5 Day”和“04 Months”
解释:
输入要么是“1 天/月/年”,要么是数字 1-9,后跟任意数量的数字 0-9,后跟空格和字符串“Days”“Months”或“Years”之一"
【讨论】:
\d+\s+(Day|Month|Year)(s)?
【讨论】:
^ 和$ 不是我们想要的,我会在其两侧放置一个\b。