【发布时间】:2010-11-12 02:26:15
【问题描述】:
我想要一个正则表达式来测试一个字符串是否满足以下规则:
- 不能以
.开头。 - 不能以
.结尾。 - 不能包含
!@#$%^&*等特殊字符,但可以包含.。 - 它不能包含两个并排的点
.。
有效输入示例:
-
na.me(中间单点)
无效输入示例:
-
.name(以点开头) -
name.(以点结尾) -
na..me(包括并排的两个点) -
$name(任何位置都不允许有特殊字符) -
name#(同样) -
na#me(同样)
【问题讨论】:
-
为什么要使用正则表达式?为什么不只测试字符串是否满足这些属性中的每一个呢?您最终会这样做,以便向用户提供有意义的反馈(“名称可能不以句点 (.) 开头”)。
-
因为我想使用正则表达式验证。谢谢。
标签: regex