C#正则表达式用于允许空格但不包括开头,结尾和重复空格

时间:2015-01-16 18:06:15

标签: c# regex expression

我对UI字段进行了正则表达式验证:

^[a-z|A-Z|0-9|_|\-]+$

现在我需要为条目允许空格,所以如果我在regex表达式中添加空格,就像这样:

^[a-z|A-Z|0-9|_| |\-]+$

它允许在开头,结尾和重复空格中使用空格。

有人可以帮我这个吗?

1 个答案:

答案 0 :(得分:1)

我建议您从字符类中删除|符号,并包含\s而不是空格。

@"^[a-zA-Z0-9_-]+(?:\s[a-zA-Z0-9_-]+)*$"

\s也匹配换行符。因此,根据您的需要将\s更改为上述正则表达式中的空格。这里的主要内容是匹配的非捕获组(?:\s[a-zA-Z0-9_-]+)*

  • 空格\s以及以下一个或多个字词或连字符[a-zA-Z0-9_-]+,零次或多次(?:\s[a-zA-Z0-9_-]+)*

DEMO

相关问题