Javascript 在字符串上查找电子邮件
几天前我问了这个问题: 第一个答案非常完美。现在我需要修改正则表达式以查找电子邮件。问题是我对正则表达式一无所知,而且我一直在四处寻找,但似乎无法实现它。 代码如下:Javascript 在字符串上查找电子邮件,javascript,regex,json,Javascript,Regex,Json,几天前我问了这个问题: 第一个答案非常完美。现在我需要修改正则表达式以查找电子邮件。问题是我对正则表达式一无所知,而且我一直在四处寻找,但似乎无法实现它。 代码如下: var m=null , result=JSON.stringify(response) , re=/"message":"([^"]+)"/g , messages=[]; while( m=re.exec(result) ) { messages.push(m[1]);
var m=null
, result=JSON.stringify(response)
, re=/"message":"([^"]+)"/g
, messages=[];
while( m=re.exec(result) ) {
messages.push(m[1]);
关于我的另一个问题,我们已经解释了一切,但基本上这段代码所做的就是获取message:“this TEXT”
现在我想知道文本是否包含电子邮件
我已经检查了许多javascript regexp示例,发现它相当混乱,所以如果您能给我一点解释(或阅读一些内容)关于为什么要这样做,我非常感谢。您正在寻找的Regexp既长又难看。RFC标准中的电子邮件地址定义过于复杂和允许。请参阅上的“有效电子邮件地址”部分。但是,您可以使用以下简单的Regexp检查字符串是否像电子邮件:
/^.+@.+\..+$/
您要查找的Regexp很长,很难看。RFC标准中的电子邮件地址定义过于复杂和允许。请参阅上的“有效电子邮件地址”部分。但是,您可以使用以下简单的Regexp检查字符串是否与电子邮件相似:
/^.+@.+\..+$/
您要查找的Regexp很长,很难看。RFC标准中的电子邮件地址定义过于复杂和允许。请参阅上的“有效电子邮件地址”部分。但是,您可以使用以下简单的Regexp检查字符串是否与电子邮件相似:
/^.+@.+\..+$/
您要查找的Regexp很长,很难看。RFC标准中的电子邮件地址定义过于复杂和允许。请参阅上的“有效电子邮件地址”部分。但是,您可以使用以下简单的Regexp检查字符串是否与电子邮件相似:
/^.+@.+\..+$/
可以在中找到关于这一工作原理的解释。您可以使用一些非常非常长的正则表达式来验证基于RFC标准的电子邮件。这些正则表达式非常简短,易于理解 如果您想验证任何看起来像电子邮件的内容,可以使用以下方法:
^.+@.+\..+$
^[^@]+@[^@]+\.[^@]+$
但是,此正则表达式还允许空格和多个@符号。因此,您可以使用:
^.+@.+\..+$
^[^@]+@[^@]+\.[^@]+$
但这将允许在名称和TLD中使用特殊字符,因此,这里有一个短正则表达式,它将匹配几乎所有英文电子邮件(以及非英文电子邮件):
此正则表达式将匹配字符a-z
,a-z
,0-9
,-
,~
,,!
,$
,,,,(
,),*
,+
,,,;,:
,和=
符号前面的一次或多次将匹配@
符号后面的任何字符(新的国际域名现在几乎允许所有字符),并允许a-z
或a-z
作为TLD的2倍或更多倍
有些国际域名中没有英文字符,因此,如果您希望成为国际观众,最好将[a-zA-Z]{2,36}
替换为{2,36}
在regex101.com上
在regex101.com上
在regex101.com上。有一些非常非常长的正则表达式,您可以使用它们来验证基于RFC标准的电子邮件。这些正则表达式非常简短,易于理解
如果您想验证任何看起来像电子邮件的内容,可以使用以下方法:
^.+@.+\..+$
^[^@]+@[^@]+\.[^@]+$
但是,此正则表达式还允许空格和多个@符号。因此,您可以使用:
^.+@.+\..+$
^[^@]+@[^@]+\.[^@]+$
但这将允许在名称和TLD中使用特殊字符,因此,这里有一个短正则表达式,它将匹配几乎所有英文电子邮件(以及非英文电子邮件):
此正则表达式将匹配字符a-z
,a-z
,0-9
,-
,~
,,!
,$
,,,,(
,),*
,+
,,,;,:
,和=
符号前面的一次或多次将匹配@
符号后面的任何字符(新的国际域名现在几乎允许所有字符),并允许a-z
或a-z
作为TLD的2倍或更多倍
有些国际域名中没有英文字符,因此,如果您希望成为国际观众,最好将[a-zA-Z]{2,36}
替换为{2,36}
在regex101.com上
在regex101.com上
在regex101.com上。有一些非常非常长的正则表达式,您可以使用它们来验证基于RFC标准的电子邮件。这些正则表达式非常简短,易于理解
如果您想验证任何看起来像电子邮件的内容,可以使用以下方法:
^.+@.+\..+$
^[^@]+@[^@]+\.[^@]+$
但是,此正则表达式还允许空格和多个@符号。因此,您可以使用:
^.+@.+\..+$
^[^@]+@[^@]+\.[^@]+$
但这将允许在名称和TLD中使用特殊字符,因此,这里有一个短正则表达式,它将匹配几乎所有英文电子邮件(以及非英文电子邮件):
此正则表达式将匹配字符a-z
,a-z
,0-9
,-
,~
,,!
,$
,,,,(
,),*
,+
,,,;,:
,和=
符号前面的一次或多次将匹配@
符号后面的任何字符(新的国际域名现在几乎允许所有字符),并允许a-z
或a-z
作为TLD的2倍或更多倍
有些国际域名不支持h