【发布时间】:2017-05-03 12:44:43
【问题描述】:
我的问题是,我必须编写正则表达式,这将禁止仅包含数字的字符串。现在我有:
@"^\D{3,30}$"
但它不会匹配 qwe2 之类的内容。所以,换句话说,我需要正则表达式,即:
- 检查符号数量是否在 3 到 30 之间
- 允许所有符号
- 如果字符串仅由数字组成,则拒绝输入
例如qwe/{}21''@3 - 好; 123 - 不好; ab - 不好。
【问题讨论】:
-
您需要明确指定条件。您希望每个符号都存在吗?
ab怎么样? -
您是否正在尝试创建密码验证器?那么您可能应该要求符号数量在 12 到 200 之间或更多。 30 是远远太短的最大数字,而 3 什么都不是——即使是现在 6 也太小了。 30 将阻止人们使用安全密码短语并强制他们使用不安全的短密码