在应用程序中,我需要验证用户输入的字符串。
一个数字或一个范围(用“-”分隔的两个数字)或逗号分隔的数字和/或范围列表以及任何数字必须介于 1 和 999999 之间。
逗号和或“-”前后允许有空格。
我认为下面的正则表达式会做到这一点。
(\d{1,6}\040?(,|-)?\040?){1,}
这符合以下(非常好)。(\040
在正则表达式中是空格字符)。
- 00001
- 12
- 20,21,22
- 100-200
- 1,2-9,11-12
- 20、21、22
- 100 - 200
- 1, 2 - 9, 11 - 12
但是,我也得到了匹配:
- !!!12
我在这里想念什么?