0

正規表現は初めてですが、フォームに入力したメールアドレスを検証するのに最適な方法だと思いました。

_入力した電子メールアドレスにアンダースコア文字( )が含まれている場合を除いて、私の正規表現は機能します。

正規表現の経験が不足しているため、パターンのどこに問題のある文字を追加して許可するのかわかりません。

Dim pattern As String = "^[-a-zAZ0-9][-.a-zA-Z0-9]*@[-.a-zA-Z0-0]+(\.[-.a-zA-Z0-0+)*\." & _
    "(com|edu|info|gov|int|mil|net|org|biz|name|museum|coop|aero|pro|tv|[a-zA-Z]{2})$"

DreamInCodeの別の人も同じ問題を抱えていました。彼は_、数値チェックの後にを追加することによってそれを修正したと言いました。

A-Z0-9が表示されますが、どちらが数値チェックかわかりません...正規表現ではあまり作業していないので、どこに追加するかを誰も気にしないでください。_

前もって感謝します

4

3 に答える 3

0

正規表現の可能な修正が本当に必要な場合:

Dim pattern As String = "^[a-zA-Z0-9][-\._a-zA-Z0-9]*@[a-zA-Z0-9][-\.a-zA-Z0-9]*\.(com|edu|info|gov|int|mil|net|org|biz|name|museum|coop|aero|pro|tv|[a-zA-Z]{2})$"

とにかく、私のコメントで説明されているように、これはまだ多くの間違ったメールに対して問題がないことを検証します。

于 2010-08-31T18:02:23.403 に答える
0

電子メールを検証する唯一の方法は、このアドレスにメッセージを送信して返信を待つことです。

簡単なチェックは、中にあるかどうかをテストする@ことです。ただし、正規表現を使用する場合は_、charクラス内にinsideを追加する必要があります。[-a-zA-Z0-9_]

于 2010-08-31T12:20:34.737 に答える
0

これは、誰かがこれを必要とする場合に「@」の前にアンダースコアを付けるのを防ぐものです。

^[a-zA-Z0-9][-\.a-zA-Z0-9]*@[a-zA-Z0-9][-\.a-zA-Z0-9]*\.(com|edu|info|gov|int|mil|net|org|biz|name|museum|coop|aero|pro|tv|[a-zA-Z]{2})$

しかし、アンダースコアが含まれているメールアドレスを見たことがあります。M42が言ったように、メールを送信し、アカウントがアクティブになるのを待つのは良い選択です。しかし、すぐには実行されません。

于 2013-02-11T09:04:11.610 に答える