电子邮件正则表达式与 [dot] 匹配“.”和 [at] 代表“@”
Email Regex Match with [dot] for "." & [at] for "@"
如何通过正则表达式匹配下面列出的所有电子邮件:
maddy@gmail.com
ma123.23ddy(at)gmail.com
mad12-213dy@gmail(dot)com
ma123ddy[at]gmail[dot]com
mad123dy@gmail[dot]com
maddy[at]gmail.com
rc.joshi62@gov[dot]ab.ws.com
rc.joshi62[at]gov.ab.ws.com
rc.joshi62[at]gov[dot]ab.ws.com
rc.joshi62@gov.ab.ws.com
c.123.joshi62(at)gov(dot)ab.ws.com
rc123.jo123shi62(at)gov.ab.ws.com
r123c.joshi62@gov(dot)ab.ws.com
c.123[dot]joshi62(at)gov(dot)ab[dot]ws[dot]com
rc123(dot)jo123shi62(at)gov(dot)ab(dot)ws(dot)com
rc123(dot)jo123shi62[at]gov(dot)ab(dot)ws(dot)com
r123c(dot)joshi62[at]gov(dot)ab[dot]ws[dot]com
我正在尝试匹配此 site:view-source:https://www.panchayat.gov.in/web/guest/who-s-is-who 的源代码中提到的所有复杂电子邮件 ID
我目前正在使用下面提到的正则表达式:
\b[A-Z0-9._%+-]+@[[A-Z0-9.-]+\.[A-Z]{2,}\b
给定这些字符串...
maddy@gmail.com
maddy[at]gmail[dot]com
maddy@gmail[dot]com
maddy[at]gmail.com
rc.joshi62@gov[dot]ab.ws.com
rc.joshi62[at]gov.ab.ws.com
rc.joshi62[at]gov[dot]ab.ws.com
rc.joshi62.gov.ab.ws.com
c.joshi62(at)gov(dot)ab.ws.com
rc.joshi62(at)gov.ab.ws.com
rc.joshi62@gov(dot)ab.ws.com
以下正则表达式匹配字符串,如果它在自己的行上...
^([\w\d]+\.)?[\w\d]+(@|\[at\]|\(at\))?[\w\d]+(\.|\[dot\]|\(dot\))[\w\d]{2,}(\.[\w\d]+\.[\w\d]+)?(\.[\w\d]+)?$
如果电子邮件出现在较大的字符串中但有空格(前后单词边界)尝试...
\b([\w\d]+\.)?[\w\d]+(@|\[at\]|\(at\))?[\w\d]+(\.|\[dot\]|\(dot\))[\w\d]{2,}(\.[\w\d]+\.[\w\d]+)?(\.[\w\d]+)?\b
给定这些字符串...
maddy@gmail.com
ma123.23ddy(at)gmail.com
mad12-213dy@gmail(dot)com
ma123ddy[at]gmail[dot]com
mad123dy@gmail[dot]com
maddy[at]gmail.com
rc.joshi62@gov[dot]ab.ws.com
rc.joshi62[at]gov.ab.ws.com
rc.joshi62[at]gov[dot]ab.ws.com
rc.joshi62@gov.ab.ws.com
c.123.joshi62(at)gov(dot)ab.ws.com
rc123.jo123shi62(at)gov.ab.ws.com
r123c.joshi62@gov(dot)ab.ws.com
c.123[dot]joshi62(at)gov(dot)ab[dot]ws[dot]com
rc123(dot)jo123shi62(at)gov(dot)ab(dot)ws(dot)com
rc123(dot)jo123shi62[at]gov(dot)ab(dot)ws(dot)com
r123c(dot)joshi62[at]gov(dot)ab[dot]ws[dot]com
尝试...
\b([\w\d]+)?(\.)?([-])?[\w\d]+(\.)?[\w\d]+(@|\[at\]|\(at\))?[\w\d]+(\.|\[dot\]|\(dot\))[\w\d]{2,}(\.[\w\d]+\.[\w\d]+)?(\.[\w\d]+)?\b
更新:清理版本...
\b[\w\d.-]+(@|\[at\]|\(at\))[\w\d]+(\[dot\]|\(dot\)|\.)[\w\d.-]+\b
好的,这是:
正则表达式:
\b[A-Z0-9._%+-]+(@|\[at\]|\(at\))[A-Z0-9.-]+((\.|\[dot\]|\(dot\))[A-Z]{2,})+\b
与您自己的正则表达式相比,这只需添加 alternations
(意思是或)。
我加:
(@|\[at\]|\(at\))
将匹配 '@
' OR '[at]
' OR '(at)
'.
对于我添加的点:
(\.|\[dot\]|\(dot\))
将匹配 dot
OR '[dot]
' OR '(dot)
'
然后我做了一组:
((\.|\[dot\]|\(dot\))[A-Z]{2,})+
这将匹配诸如“.com”和“.uk.com”这样的内容一次或多次。
更新:
我更新了正则表达式以支持“。”或“@”之前名称中的“(点)”或“[点]”:
\b[A-Z0-9._%+-]+((\.|\[dot\]|\(dot\))[A-Z0-9._%+-]+)*(@|\[at\]|\(at\))[A-Z0-9.-]+((\.|\[dot\]|\(dot\))[A-Z]{2,})+\b
现在它匹配问题中的所有示例。
顺便说一句:您在最近的正则表达式中犯的错误是将所有内容都包含在 character group
中(方括号之间)。这将以任何顺序匹配组中的每个 character
。
更新二:
Ups,打字错误,更新了正则表达式。
如何通过正则表达式匹配下面列出的所有电子邮件:
maddy@gmail.com
ma123.23ddy(at)gmail.com
mad12-213dy@gmail(dot)com
ma123ddy[at]gmail[dot]com
mad123dy@gmail[dot]com
maddy[at]gmail.com
rc.joshi62@gov[dot]ab.ws.com
rc.joshi62[at]gov.ab.ws.com
rc.joshi62[at]gov[dot]ab.ws.com
rc.joshi62@gov.ab.ws.com
c.123.joshi62(at)gov(dot)ab.ws.com
rc123.jo123shi62(at)gov.ab.ws.com
r123c.joshi62@gov(dot)ab.ws.com
c.123[dot]joshi62(at)gov(dot)ab[dot]ws[dot]com
rc123(dot)jo123shi62(at)gov(dot)ab(dot)ws(dot)com
rc123(dot)jo123shi62[at]gov(dot)ab(dot)ws(dot)com
r123c(dot)joshi62[at]gov(dot)ab[dot]ws[dot]com
我正在尝试匹配此 site:view-source:https://www.panchayat.gov.in/web/guest/who-s-is-who 的源代码中提到的所有复杂电子邮件 ID 我目前正在使用下面提到的正则表达式:
\b[A-Z0-9._%+-]+@[[A-Z0-9.-]+\.[A-Z]{2,}\b
给定这些字符串...
maddy@gmail.com
maddy[at]gmail[dot]com
maddy@gmail[dot]com
maddy[at]gmail.com
rc.joshi62@gov[dot]ab.ws.com
rc.joshi62[at]gov.ab.ws.com
rc.joshi62[at]gov[dot]ab.ws.com
rc.joshi62.gov.ab.ws.com
c.joshi62(at)gov(dot)ab.ws.com
rc.joshi62(at)gov.ab.ws.com
rc.joshi62@gov(dot)ab.ws.com
以下正则表达式匹配字符串,如果它在自己的行上...
^([\w\d]+\.)?[\w\d]+(@|\[at\]|\(at\))?[\w\d]+(\.|\[dot\]|\(dot\))[\w\d]{2,}(\.[\w\d]+\.[\w\d]+)?(\.[\w\d]+)?$
如果电子邮件出现在较大的字符串中但有空格(前后单词边界)尝试...
\b([\w\d]+\.)?[\w\d]+(@|\[at\]|\(at\))?[\w\d]+(\.|\[dot\]|\(dot\))[\w\d]{2,}(\.[\w\d]+\.[\w\d]+)?(\.[\w\d]+)?\b
给定这些字符串...
maddy@gmail.com
ma123.23ddy(at)gmail.com
mad12-213dy@gmail(dot)com
ma123ddy[at]gmail[dot]com
mad123dy@gmail[dot]com
maddy[at]gmail.com
rc.joshi62@gov[dot]ab.ws.com
rc.joshi62[at]gov.ab.ws.com
rc.joshi62[at]gov[dot]ab.ws.com
rc.joshi62@gov.ab.ws.com
c.123.joshi62(at)gov(dot)ab.ws.com
rc123.jo123shi62(at)gov.ab.ws.com
r123c.joshi62@gov(dot)ab.ws.com
c.123[dot]joshi62(at)gov(dot)ab[dot]ws[dot]com
rc123(dot)jo123shi62(at)gov(dot)ab(dot)ws(dot)com
rc123(dot)jo123shi62[at]gov(dot)ab(dot)ws(dot)com
r123c(dot)joshi62[at]gov(dot)ab[dot]ws[dot]com
尝试...
\b([\w\d]+)?(\.)?([-])?[\w\d]+(\.)?[\w\d]+(@|\[at\]|\(at\))?[\w\d]+(\.|\[dot\]|\(dot\))[\w\d]{2,}(\.[\w\d]+\.[\w\d]+)?(\.[\w\d]+)?\b
更新:清理版本...
\b[\w\d.-]+(@|\[at\]|\(at\))[\w\d]+(\[dot\]|\(dot\)|\.)[\w\d.-]+\b
好的,这是: 正则表达式:
\b[A-Z0-9._%+-]+(@|\[at\]|\(at\))[A-Z0-9.-]+((\.|\[dot\]|\(dot\))[A-Z]{2,})+\b
与您自己的正则表达式相比,这只需添加 alternations
(意思是或)。
我加:
(@|\[at\]|\(at\))
将匹配 '@
' OR '[at]
' OR '(at)
'.
对于我添加的点:
(\.|\[dot\]|\(dot\))
将匹配 dot
OR '[dot]
' OR '(dot)
'
然后我做了一组:
((\.|\[dot\]|\(dot\))[A-Z]{2,})+
这将匹配诸如“.com”和“.uk.com”这样的内容一次或多次。
更新: 我更新了正则表达式以支持“。”或“@”之前名称中的“(点)”或“[点]”:
\b[A-Z0-9._%+-]+((\.|\[dot\]|\(dot\))[A-Z0-9._%+-]+)*(@|\[at\]|\(at\))[A-Z0-9.-]+((\.|\[dot\]|\(dot\))[A-Z]{2,})+\b
现在它匹配问题中的所有示例。
顺便说一句:您在最近的正则表达式中犯的错误是将所有内容都包含在 character group
中(方括号之间)。这将以任何顺序匹配组中的每个 character
。
更新二:
Ups,打字错误,更新了正则表达式。