Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/230.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/opengl/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何验证此表单的电子邮件地址:234903284@student.uws.edu.au_Php_Regex - Fatal编程技术网

Php 如何验证此表单的电子邮件地址:234903284@student.uws.edu.au

Php 如何验证此表单的电子邮件地址:234903284@student.uws.edu.au,php,regex,Php,Regex,我想知道一个正则表达式,它可以验证: 此表单的电子邮件地址:234903284@student.uws.edu.au 两个问题: “学生”是可选的,可以是任何单词,例如“老师” “324234234”可以是任何字母数字字符(数字、单词等) 电子邮件必须以“uws.edu.au”结尾 这就是我到目前为止所做的: /(\d*)@\w*\.uws\.edu\.au/ 有效地址: me@uws.edu.au 234234324@student.uws.edu.au theking@teacher.uw

我想知道一个正则表达式,它可以验证: 此表单的电子邮件地址:234903284@student.uws.edu.au

两个问题:

“学生”是可选的,可以是任何单词,例如“老师”

“324234234”可以是任何字母数字字符(数字、单词等)

电子邮件必须以“uws.edu.au”结尾

这就是我到目前为止所做的:

/(\d*)@\w*\.uws\.edu\.au/
有效地址:

me@uws.edu.au 234234324@student.uws.edu.au theking@teacher.uws.edu.au

等等

谢谢大家

三个想法:

  • 将首字母
    \d
    更改为
    \w
    ,以匹配“word”字符[a-zA-Z0-9],而不仅仅是数字
  • 使用
  • 在匹配用户名和子域时,请使用
    +
    而不是
    *
    。否则,
    @.uws.edu.au
    将进行验证
建议:

/\w+@(\w+\.)?uws\.edu\.au/
三个想法:

  • 将首字母
    \d
    更改为
    \w
    ,以匹配“word”字符[a-zA-Z0-9],而不仅仅是数字
  • 使用
  • 在匹配用户名和子域时,请使用
    +
    而不是
    *
    。否则,
    @.uws.edu.au
    将进行验证
建议:

/\w+@(\w+\.)?uws\.edu\.au/
你说:

刚刚尝试了/(\w*)@(\w*)uws.edu.au/,似乎奏效了。欢迎提供更多建议–Jason 4秒前

您的正则表达式将匹配
“@teacher.uws.edu.au”
(即省略“名称部分”)

要解决此问题,您可以使用:

/(\w+)@(\w+\.)?uws\.edu\.au/
这将要求名称部分中至少有一个字符,子域点中的点(如果有点)前至少有一个字符

另外(我认为)
\w
将不匹配
(可能还有您在名称部分关心的其他字符),因此
鲍勃。jones@student.uws.edu.au
将无法匹配。以下内容将在“名称”部分添加字符
-

/([\w\._-]+)@(\w*\.)?uws\.edu\.au/
你可以用同样的方法添加你需要的任何其他字符

注意:匹配电子邮件地址通常比你想象的要复杂(从技术上讲,电子邮件地址中允许有很多奇怪的东西。(有许多其他类似的信息来源)。

你说:

刚刚尝试了/(\w*)@(\w*)?uws.edu.au/,似乎效果不错。欢迎进一步建议–Jason 4秒前

您的正则表达式将匹配
“@teacher.uws.edu.au”
(即省略“名称部分”)

要解决此问题,您可以使用:

/(\w+)@(\w+\.)?uws\.edu\.au/
这将要求名称部分中至少有一个字符,子域点中的点(如果有点)前至少有一个字符

另外(我认为)
\w
将不匹配
(可能还有您在名称部分关心的其他字符),因此
鲍勃。jones@student.uws.edu.au
将无法匹配。以下操作将把字符
-
添加到“名称”部分:

/([\w\._-]+)@(\w*\.)?uws\.edu\.au/
你可以用同样的方法添加你需要的任何其他字符


注意:匹配电子邮件地址通常比你想象的要复杂得多(从技术上讲,电子邮件地址中允许有很多奇怪的东西。(有许多其他类似的信息来源).

你必须避开
,否则它会匹配任何东西。这个问题有什么不清楚的地方?投票否决我却不说原因似乎有点报复性。电子邮件地址第一部分中的其他有效字符呢?如“$”、“&”、“”和“#”很好,删除了该评论。如果你愿意,请撤销反对票种类:)目标广泛;确保您至少有一个
@
和一个
,然后通过发送确认电子邮件进行实际验证。如果不确认地址存在且处于活动状态,则使用复杂正则表达式进行测试是完全没有意义的。您必须避开
,否则它会匹配任何内容。que有什么不清楚的地方stion?投票否决我却不说原因似乎有点报复性。那么电子邮件地址第一部分的其他有效字符呢?如“$”、“&”、“''和“#”很好,删除了该评论。如果你愿意的话,请撤销反对票:)目标广泛;确保您至少有一个
@
和一个
,然后通过发送确认电子邮件进行实际验证。如果不确认地址是否存在并处于活动状态,使用复杂正则表达式进行测试是完全没有意义的。