2013-07-21 73 views
2

我正在编写一个需要验证输入字符串以确保它不以空格开头的C#程序, t包含空格,并且不以空格结束。正则表达式匹配不以字符串开始,包含或以空格结束字符串

我目前使用下面的正则表达式:

^[\S]*$ 

这只是如果字符串为空的所有字符串的伟大工程:

"HELLO" (Match) 
"H" (Match) 
"HE LLO" (No Match) 
" HELLO" (No Match) 
"HELLO " (No Match) 
"" (Match) 

正如你可以看到空字符串“”回报这不是我想要的比赛。

如何修改我的正则表达式以确保字符串不是空的?

谢谢。

+0

也许加上[\ S] + – vladkras

+0

是的工作表示感谢! –

回答

2

只需用一个或多个量词(+)替换零个或多个量词(*)即可。另外,不需要将\S包装在字符类中。试试这个:

^\S+$ 

延伸阅读:

+0

哇,这很容易!谢谢! –

0

这是一个有点容易只是为了测试对

\s 

任何地方存在...

+0

您仍然需要检查字符串的长度。一个空字符串在任何地方都不包含'\ s'。 –

相关问题