求一复杂的正则表达式,高手请进! 重分酬谢!

jzw995123 2003-06-06 03:24:19
我想写一个正则表达式,用在检验控件中,然后用检验控件去检测某文本框中填写的内容,必须符合正则表达式规定的类型。

文本框中填写的内容的通式有两种:
第一种:有两个单词组成,第一单词首字母大写,其余字母都小写,两个单词之间用一个空格符号进行分隔,整个字符串没有前导和后续空格。例如:Aaadd bbbds.

第二种:跟第一种类似,但是后面还有一串特定的字符:
例如:Aaadd bbbds var. sdjsjdf 请注意,第二种样式的前半部分跟第一种一样,但后面半部分的格式是:加一个空格,然后加一个"var.",再加一个空格,最后是一串小写的字符串,也没有后续空格。

我需要写一个正则表达式来匹配这两种情况。我自己写的如下:
[A-Z][a-z]+\s[a-z]+ (\svar\.\s[a-z]+)?

我的写法是这么考虑的:前面的[A-Z][a-z]+\s[a-z]+ 大家应该没问题
后面我用了一个(\svar\.\s[a-z]+)?表示这是可有可无的,有的话,就按照括号里的格式书写。

但是调试的结果是,这个正则表达式不能正常判断!

请高手赐教!
...全文
154 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
mongtze 2003-07-03
  • 打赏
  • 举报
回复
赫赫,学习
goody9807 2003-07-03
  • 打赏
  • 举报
回复
--你写的就差一点 多个空格
[A-Z][a-z]+\s[a-z]+ (\svar\.\s[a-z]+)?
~~

---

[A-Z][a-z]+\s[a-z]+(\svar\.\s[a-z]+)? 正确 我刚测试完,没问题
mongtze 2003-06-30
  • 打赏
  • 举报
回复
[C#]
[A-Z][a-z]*/\f/[a-z]*|[A-Z][a-z]*/\f/[a-z]*/\f/(var.)/\f/[a-z]*]
[JScirpt]
/^[A-Z][a-z]*/\f/[a-z]*$|^[A-Z][a-z]*/\f/[a-z]*/\f/(var.)/\f/[a-z]*]$/

注释
[A-Z] :A到Z的任一字符;
[a-z]* :a到z的任意字符串;
\f :一个空白字符
| :或
(var.) :字符串 var.

初学,不知道可不可以.

62,243

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧