3

その内容に英数字以外の文字が含まれているかどうかを確認するWindowsフォームのテキストボックスまたはC#文字列ネイティブメンバーメソッドはありますか?

それとも手動で行う必要がありますか?

編集:@Habibの回答を使用して、空白もチェックされるように追加しましたが、驚いたことに、うまくいきました! 笑

bool result = strVariable.Any(r=> (!char.IsLetterOrDigit(r) && !char.IsWhiteSpace(r)));

ところで、「ラムダ」式を使用したことがないため、@ Habibの最初の回答に空白条件を追加したときに上記のコードが機能したことに驚いています。

4

2 に答える 2

4

char.IsLetterOrDigitを使用できます

Unicode 文字が文字または 10 進数のどちらに分類されるかを示します。

bool result = strVariable.Any(r=> !char.IsLetterOrDigit(r));
于 2012-12-04T10:47:59.633 に答える
0

TextBox をベースとするコントロールを作成できますが、現在これを行うプロパティはありません。textBox の KeyUp イベントでこれを行い、正規表現などを使用する必要があります。

于 2012-12-04T10:48:31.213 に答える