2013-07-21 101 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'。 –

相關問題