2

入力文字列がスペースで始まっていないこと、スペースが含まれていないこと、およびスペースで終わっていないことを確認するために入力文字列を検証する必要がある C# プログラムを作成しています。

現在、次の正規表現を使用しています。

^[\S]*$

これは、文字列が空の場合を除いて、すべての文字列でうまく機能します。

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

ご覧のとおり、空の文字列 "" は、私が望むものではない一致を返します。

文字列が空でないことを確認するために正規表現を変更するにはどうすればよいですか?

ありがとうございました。

4

2 に答える 2

2

0 個以上の量指定子 ( *) を 1 つ以上の量指定子 ( ) に置き換えるだけ+です。\Sまた、文字クラスでラップする必要はありません。これを試して:

^\S+$

参考文献:

于 2013-07-21T01:09:12.497 に答える