2

入力が英語の文字ではないかどうかを検出しようとしていますが、入力が許可されず、以下のコードを使用して入力を検証しています。入力が英語以外の場合、コードは正常に機能します。入力に英語の文字と英語以外の文字が含まれている場合、以下のコードにより入力が通過できるようになり、これが発生することは望ましくありません。入力に英語以外の文字が検出された場合、入力を禁止するにはどうすればよいですか?

If Not Regex.IsMatch(Edt.Text, "[A-Za-z0-9]") Then
End If 
4

2 に答える 2

1

次の正規表現を使用します。

^[A-Za-z0-9]*$
于 2012-07-17T03:52:04.167 に答える
1

ラテン文字またはアラビア数字含まれている場合、そのRegex.IsMatch呼び出しは成功します。Edt.Text

まず、問題をより明確に定義する必要があります。特に、許可される文字を正確に決定する必要があります (スペースと句読点について考えてください)。

次に、文字列全体に一致するように正規表現を変更する必要があります。おそらく次のようになります。

"^[something]*$"

something演習として残されている場所。

于 2012-07-17T03:52:58.297 に答える