[解決済み] メールアドレスの検証はどのようにすればよいですか?
2022-03-16 01:06:18
質問
Androidでメールアドレス(ユーザー入力欄など)を検証するための良いテクニックは何でしょうか? org.apache.commons.validator.routines.EmailValidator は利用できないようです。Androidにすでに含まれている、これを行う他のライブラリはありますか、または私はRegExpを使用しなければなりませんか?
解決方法は?
REG-EXを使わないでください。
に適合するほとんどのメールアドレスを正しく検証できるREG-EXは、以下のようなものらしい。 RFC 2822 のようなものでは、まだ失敗します( org.apache.commons.validator.routines.EmailValidator と同様)。
(?:[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*|"(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21\x23-\x5b\x5d-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])*")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21-\x5a\x53-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])+)\])
電子メールを検証する最も簡単な方法は、提供されたアドレスに確認メールを送信し、それがバウンスした場合、それは有効でないことを意味します。
基本的なチェックを行うのであれば、次のような形式であることを確認するだけでよいでしょう。
*@*
ビジネスロジックに特化した検証が必要な場合は、正規表現を使用して検証を行うことができます。
関連
-
[解決済み] プログラムによりスピナーの選択項目を設定する
-
ConstraintLayoutのいくつかのプロパティの概要(RelativeLayoutの強化版、LinearLayoutの比例プロパティを含む、階層ツールの削減)。
-
Android--shape--描画のコーナー、グラデーション、パディング、サイズ、ソリッド、ストロークのプロパティを指定する。
-
[解決済み] android.os.NetworkOnMainThreadException' を修正するにはどうすればよいですか?
-
[解決済み] JavaScriptでメールアドレスを検証するのに最適な方法は何ですか?
-
[解決済み] Androidのソフトキーボードをプログラムで閉じる/隠すにはどうすればよいですか?
-
[解決済み] Androidでアクティビティ起動時にEditTextにフォーカスが当たらないようにする方法
-
[解決済み] インスタンス状態の保存を使用してアクティビティ状態を保存するにはどうすればよいですか?
-
[解決済み] アプリケーションを終了することは嫌われますか?
-
[解決済み] 電子メールアドレスの検証を行うC#コード
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
AAPT2エラーについて:詳しくはログをご確認ください。
-
[解決済み] AndroidでEditTextでメールアドレスの検証を行う【重複あり
-
android E/RecyclerView﹕ アダプタが接続されていないため、レイアウトをスキップする。
-
RuntimeException: アクティビティを開始できません ComponentInfo solution
-
android:EMSのプロパティ
-
例外「指定された子にはすでに親がいます」の解決方法。removeViewを呼び出す必要があります" の解決方法(ソースコード付き例)
-
Error:A problem occurred configuring project ':app'. > ビルドを見つけられませんでした。
-
Androidプロセス生存のためのソリューション
-
アンドロイドスタジオ学習入門
-
アンドロイドにおけるトークンの利用