【发布时间】:2011-11-18 19:57:26
【问题描述】:
我有一个需要使用正则表达式验证的文本字段。我的要求如下:
CCCCNNNNNN或CCCCNNNNNNN(模板)
1234ABCDEFG或123-ABCDEFG(示例字符串)
规则:
- 整个字符串最多 25 个字符
- 前四个字符 (CCCC) 必须是字母数字
- CCCC 是 4 个字符,可以是数字也可以是数字
- CCCC 可以将破折号作为第 4 个字符
- NNNNNNNNNNNN 最多可包含 21 个字符且只能包含数字
例如AAAA 1234 A58- 是 CCCC 的有效字符串。
这是我的研究笔记:
- 我需要先匹配数字
- 我需要
+字符来指定匹配此模式 X 次 - 之后我需要匹配 8-9 个空格的字母
这里有一篇关于 RegEx 模式的精彩文章:
Matching numbers with regular expressions — only digits and commas
我的目标是将此 REGEX 模式应用于 WinForms 应用程序中的文本框掩码。
【问题讨论】:
-
我已经删除了我的答案 - 请回去写一个明智的问题。
-
很抱歉,我已经阐明了我的要求。希望这能让我更清楚地了解我需要什么。
-
不够:对我来说,“前四个字符 (CCCC) 必须是字母数字”意味着
ABCD或1234并且要求“NNNNNNNNNNNN 最多可以包含 21 个字符,并且只能是数字”与您的示例1234ABCDEFG冲突。那么,I will need to match letters after that for 8-9 spaces到底是什么意思? -
尝试以我的回答中的 cmets 的形式说明允许的内容 - 如有必要,不允许执行的内容
标签: regex regular-language maskedtextbox