一般的な正規表現-メールボックス(Email)
2058 ワード
一般的な正規表現-メールボックス(Email)
本稿では、正則の基礎が少しある学生について、正則について何も知らない場合は、「正則表現30分入門チュートリアル」に移動して勉強してください.
文字列がメールボックスであるかどうかを検証するには、まずメールボックスアカウントのフォーマットを理解します.ネットで標準的なフォーマットを見つけてみましたが、残念ながら見つかりませんでした.私もRFC規格を使ってメールボックスのフォーマットを判断してみましたが、結果も出ませんでした.ネット上のいくつかのブログはRFC標準を使ってメールボックスが合法かどうかを検証すべきではないと言って、興味があるのは「is this email valid?」を見ることができます.と「Don’t RFC-Validate Email Addresses」.「参考」によると、現在中国語で命名されたメールボックスも合法的で、例えば「楊元慶@連想.中国」である.
メールアカウントのフォーマットは統一されていませんが、すべてのメールボックスは「名称@ドメイン名」の法則に合っています.名前とドメイン名の文字制限については、英語、数字、下線などの構成のみを許可するなど、プロジェクトの状況に応じて定義できます.次に、メールボックスのフォーマットを検証するいくつかの正規表現を例に挙げます.
例1、英字、数字、下線、英字句点、および中線のみを許可
例:[email protected]分析メール名セクション: 26個の大文字と小文字の英字表記 数字は と表す.下線は と表示する.におけるスクライブ表示は である.名前はいくつかのアルファベット、数字、下線、および中線からなるため、 が複数回現れることを示す必要がある.
以上の条件に基づいてメール名式を導出する:
一般ドメイン名の法則は「[N級ドメイン名][3級ドメイン名.]2級ドメイン名.トップドメイン名、例えば「qq.com」、「www.qq.com」、「mp.weixin.qq.com」、「12-34.com.cn」は、「"**"部分は と表すことができる.".**"部分は と表すことができる.個以上の「.*」は、 と表すことができる.
上記のように、ドメイン名部分は
最終式: メールボックスの基本形式は「名前@ドメイン名」であるため、「^」を使用してメールボックスの開始部分をマッチングし、「$」を使用してメールボックスの終了部分をマッチングして、メールボックスの前後に他の文字がないことを保証する必要があるため、最終メールボックスの正規式は:
例:楊元慶[email protected]
分析メール名セクション:漢字は正則で と表す.文字と数字は
メールセクションは、
最終式: メールボックスの名前とドメイン名を@記号でつなぎ合わせるため、完全なメールボックス式は
本稿では、正則の基礎が少しある学生について、正則について何も知らない場合は、「正則表現30分入門チュートリアル」に移動して勉強してください.
文字列がメールボックスであるかどうかを検証するには、まずメールボックスアカウントのフォーマットを理解します.ネットで標準的なフォーマットを見つけてみましたが、残念ながら見つかりませんでした.私もRFC規格を使ってメールボックスのフォーマットを判断してみましたが、結果も出ませんでした.ネット上のいくつかのブログはRFC標準を使ってメールボックスが合法かどうかを検証すべきではないと言って、興味があるのは「is this email valid?」を見ることができます.と「Don’t RFC-Validate Email Addresses」.「参考」によると、現在中国語で命名されたメールボックスも合法的で、例えば「楊元慶@連想.中国」である.
メールアカウントのフォーマットは統一されていませんが、すべてのメールボックスは「名称@ドメイン名」の法則に合っています.名前とドメイン名の文字制限については、英語、数字、下線などの構成のみを許可するなど、プロジェクトの状況に応じて定義できます.次に、メールボックスのフォーマットを検証するいくつかの正規表現を例に挙げます.
例1、英字、数字、下線、英字句点、および中線のみを許可
例:[email protected]分析メール名セクション:
a-zA-Z
0-9
_
-
+
を用いて以上の条件に基づいてメール名式を導出する:
[a-zA-Z0-9_-]+
ドメイン名部分を分析する:一般ドメイン名の法則は「[N級ドメイン名][3級ドメイン名.]2級ドメイン名.トップドメイン名、例えば「qq.com」、「www.qq.com」、「mp.weixin.qq.com」、「12-34.com.cn」は、「
**
.**
.**
.**
[a-zA-Z0-9_-]+
」のように構成されていると分析されている.\.[a-zA-Z0-9_-]+
(\.[a-zA-Z0-9_-]+)+
[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+
上記のように、ドメイン名部分は
^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$
として表すことができる最終式: メールボックスの基本形式は「名前@ドメイン名」であるため、「^」を使用してメールボックスの開始部分をマッチングし、「$」を使用してメールボックスの終了部分をマッチングして、メールボックスの前後に他の文字がないことを保証する必要があるため、最終メールボックスの正規式は:
[\u4e00-\u9fa5]
インスタンス2、名前は漢字、アルファベット、数字を許可し、ドメイン名は英語ドメイン名のみを許可する例:楊元慶[email protected]
分析メール名セクション:
A-Za-z0-9
[A-Za-z0-9\u4e00-\u9fa5]+
メールドメイン名セクションの分析メールセクションは、
1
の
を参照してください. 得られたドメイン名部分の式は[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+
である.最終式: メールボックスの名前とドメイン名を@記号でつなぎ合わせるため、完全なメールボックス式は