加入收藏 | 设为首页 | 会员中心 | 我要投稿 应用网_阳江站长网 (https://www.0662zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 创业 > 政策 > 正文

常用邮箱正则表达式知识点解读及判读有效数字

发布时间:2020-12-15 23:12:48 所属栏目:政策 来源:做站长
导读:这篇文章主要介绍了解读邮箱正则表达式:^w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*$,需要的朋友可以参考下 验证邮箱的正则表达式 var ePattern = /^([A-Za-z0-9_-.])+@([A-Za-z0-9_-.])+.([A-Za-z]{2,4})$/; 或者 w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)* w任

上述字符串将会与目标对象中除A,B,和C之外的任何字符相匹配。一般来说,当“^”出现在 “[]”内时就被视做否定运算符;而当“^”位于“[]”之外,或没有“[]”时,则应当被视做定位符。

最后,当用户需要在正则表达式的模式中加入元字符,并查找其匹配对象时,可以使用转义符“”。例如:

/Th*/

上述正则表达式将会与目标对象中的“Th*”而非“The”等相匹配。

使用实例

在对正则表达式有了较为全面的了解之后,我们就来看一下如何在Perl,PHP,以及JavaScript中使用正则表达式。

通常,Perl中正则表达式的使用格式如下:

operator / regular-expression / string-to-replace / modifiers

运算符一项可以是m或s,分别代表匹配运算和替换运算。

其中,正则表达式一项是将要进行匹配或替换操作的模式,可以由任意字符,元字符,或定位符等组成。替换字符串一项是使用s运算符时,对查找到的模式匹配对象进行替换的字符串。最后的参数项用来控制不同的匹配或替换方式。例如:

s/geed/good/

将会在目标对象中查找第一个出现的geed字串,并将其替换为good。如果我们希望在目标对象的全局范围内执行多次查找—替换操作的话,可以使用参数

“g”,即s/love/lust/g。

此外,如果我们不需要限制匹配的大小写形式的话,可以使用参数 “i ”。例如,

m/JewEL/i

上述正则表达式将会与目标对象中的jewel,Jewel,或JEWEL相匹配。

在Perl中,使用专门的运算符“=~”指定正则表达式的匹配对象。例如:

$flag =~ s/abc/ABC/

上述正则表达式将会把变量$flag中的字串abc替换为ABC。

下面,我们就在Perl程序中加入正则表达式,验证用户邮件地址格式的有效性。

代码如下:

如果用户更偏爱PHP的话,可以使用ereg()函数进行模式匹配操作。ereg()函数的使用格式如下:

ereg(pattern, string)

其中,pattern代表正则表达式的模式,而string则是执行查找替换操作的目标对象。同样是验证邮件地址,使用PHP编写的程序代码如下:

最后,我们在来看一下JavaScript。JavaScript

1.2中带有一个功能强大的RegExp()对象,可以用来进行正则表达式的匹配操作。其中的test()方法可以检验目标对象中是否包含匹配模式,并相应的返回true或false。

我们可以使用JavaScript编写以下脚本,验证用户输入的邮件地址的有效性。

一旦你有个包含了整个串的变量,你可以使用正则表达式,对整个文件进行操作,

而不是对文件中的某个块进行操作。有两个有用的正则表达式标记/s和/m。一般,Perl的 正则表达式对行进行处理,你可以这样写:

如果把我们的文件填入如下内容: browngrass

bluegrass

则输出为:

found bluegrass

它没有找到“browngrass”,这是因为$ 仅在串尾寻找其匹配, (或者在串结束 前的一行)。如果在包含很多行的串中,用”^”

和”$”来匹配,, 我们可以使用 /m (“multiline”) 选项:

if ($line =~ /(b.*grass)$/m) {}

现在程序会把如下的信息输出:

found browngrass

类似地,句点可以匹配除了换行符之外的所有字符:

while () {

if (/19(.*)$/) {

if ($1 < 20) {

$year = 2000+$1;

} else {

$year = 1900+$1;

}

}

}

如果我们从文件中读入“1981”,$_ 将包含“1981n”。正则表达式中的句点 匹配“8”和“1”, 而不匹配“n”。这里正需要这样做,因为换行符不是日期的组成部分。对于一个包含很多行的串,我们也许要提取其中的大的块,这些块可能会跨越行分隔符。 在这种情况下,我们可以使用 /s 选项,并用句点来匹配除了换行符以外的所有字符。

if (m{(.*?)}s) {

print “Found bold text: $1n”;

}

此处,我用了{}来表示正则表达式的起始和结束,而不用斜杠,所以,我就可以 告诉 Perl我正在匹配,起始字符为”m”,结束字符为”s”。你

可以把/s 和/m 选项组合使用:

if (m{^(.*?)}sm) {

# …

}

总结

有两种方法打开文件:open()函数的特点是快速简捷,而sysopen()函数功能强 大而复杂。通过操作符,可以读入一个记录,$/

变量可以让你控制记 录是什么。如果你打算把很多行的内容读入到一个串中,不要使用忘记/s和/m 这两 个正则表达式标记。

来源:脚本之家

链接:https://www.jb51.net/article/181213.htm

申请创业报道,分享创业好点子。点击此处,共同探讨创业新机遇!

本文素材来自互联网

(编辑:应用网_阳江站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读