正则表达式无法正常工作

时间:2011-07-07 00:51:50

标签: c# regex

我有这个正则表达式。它应该匹配所有一个角色,以及所有一个角色和一个空格。

例如:

wwwwwwww - MATCH
www wwwwww - MATCH
@@@@@ - MATCH
wwwwqq - NOT MATCH
wwww qqqq - NOT MATCH

但它与以下内容不匹配:

@@@@@@@
.......

它出了什么问题?它在下面:

var match = Regex.Match(message, @"^\s*(\w)(?:\1|\s)*$");

2 个答案:

答案 0 :(得分:3)

因为@.不是“单词字符”。你能不能与(.)匹配?

var match = Regex.Match(message, @"^\s*(.)(?:\1|\s)*$");

您也可以尝试\S(非空白字符)。

答案 1 :(得分:1)

\w是“单词字符”的简写,不包括@.等标点符号。

Dot(.)表示任何角色; \S表示非空格。