【发布时间】:2009-08-24 22:24:42
【问题描述】:
我正在开发一个需要匹配正则表达式和字符串的程序。该字符串实际上非常简单,但我当前的正则表达式有问题(我正在使用 .net 正则表达式引擎)
我当前的正则表达式是“^[VvEeTtPp][^a-zA-Z0-9\s]\d{0,12}?$”
现在,我要匹配的字符串总是遵循这个模式
- 首先是单个字母(在任何一种情况下都只允许使用 V、E、P、T 字母)
- 然后,一个破折号
- 最后从 4 到 12 位。
最后一个限制是,正则表达式必须匹配任何符合规则的子字符串(例如“V”或“E-”或“P-123”)
正则表达式运行良好,但它会接受诸如“V--”之类的内容。
谁能帮我写一个更好的表达方式??
谢谢
【问题讨论】:
-
嗯...您的正则表达式看起来不正确...有一个没有开始括号的结束括号。
-
你说得对,括号不应该在那里,我正在编辑它
-
子字符串怎么样?您想要任何有效值的子字符串,还是只需要从有效值的第一个字符开始的子字符串? “-123”是不是一个有效的子字符串?
-
"-123" 将是一个有效的子字符串,它们必须从第一个字符(字母)开始
-
错字...我不是说“-123”不会