4

私は次の正規表現パターンを持っています:"[A-TVWZ]"。空の文字列も受け入れるために必要""ですが、パターンに挿入するにはどうすればよいですか?ユーザーが何も書き込まずにセルを離れると、検証中にエラーが発生するため、DataGridViewに必要です...

4

3 に答える 3

11

多分これは単純すぎます。正規表現のない空の文字列をチェックします。

例えば:

if ( string.IsNullOrEmpty( myString ) || Regex.IsMatch( "[A-TVWZ]", myString )
{
    ....
}

見る:

于 2012-05-15T05:43:11.527 に答える
5

これを試す"[A-TVWZ]?""^[A-TVWZ]?$"

疑問符(?)は、パターンが0回または1回一致することを確認します。したがって、ゼロ回は空の文字列を意味します。

于 2012-05-15T05:46:15.960 に答える
3

これを行う純粋な正規表現の方法は次のようになります

[A-TVWZ]|^$

これは、前述の文字の1つまたは空の文字列のいずれかに一致します。あなたのコメントは、ユーザーがとにかく単一の文字しか入力できないことを示しているので、別のオプションは

^[A-TVWZ]?$

これはワカスの答えに似ています。ただし、これはアンカーのために一致する可能性のある他の文字列を導入しません。

于 2012-05-15T06:14:51.503 に答える