php 正则mac地址,正则表达式匹配MAC地址、邮箱地址、IP地址

(1)匹配MAC地址

1)MAC地址由12个16进制的字母组成

2)16个字母是 0~9、a~f 。不区分大小写,一般为大写

3)每两个字母为一组,共六组,每组间用冒号:隔开

匹配思路:

00:0C:29:88:83:1A

1)先匹配前两个字母;用元字符[] 匹配单个字符,用{2}匹配2次

2)接着匹配冒号和两个字母;后面的跟这个匹配方式相同,用{5}匹配5次

[root@moni01 tmp]# egrep '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}' /etc/sysconfig/network-scripts/ifcfg-eth0 --color

HWADDR=00:0C:29:E3:5F:39

[root@moni01 tmp]#

如果要仅输出MAC地址,那就要用awk工具切割

方法:以等号为分隔符,取第二个

[root@moni01 tmp]# egrep '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}' /etc/sysconfig/network-scripts/ifcfg-eth0 | awk -F "=" '{print $2}'

00:0C:29:E3:5F:39

[root@moni01 tmp]#

(2)匹配邮箱地址

1)邮箱完整地址由用户名@域名组成

2)用户名最少三个字符,由由字母、数字、下划线组成,字母不区分大小写

3)域名应至少有一个 . 分隔,分隔的各部分至少2个字符,可能由字母、数字组成

匹配思路:

1)用户名在这范围内[0-Z_],所有数字字母下划线,最少匹配三次

2)域名小点 .前面的字母至少2次,小点的字母包括小点整部分至少匹配一次。小点需要转义,不然会匹配任何单个字符

[root@moni01 tmp]# egrep '[0-Z_]{3,}@[0-Z]{2,}(\.[0-Z]{2,})+' mail

123456789@qq.com

hlf@163.com

[root@moni01 tmp]#

(3)匹配IP地址

1)IP地址是一个32位的二进制数,通常被分割为4个“8位二进制数”

2)IP地址通常用“点分十进制”表示成(a.b.c.d)的形式,其中,a,b,c,d都是0~255之间的十进制整数

[root@moni01 tmp]# ifconfig | egrep '[0-9]{1,3}(\.[0-9]{1,3}){3}'

inet addr:192.168.10.253 Bcast:192.168.10.255 Mask:255.255.255.0

inet addr:127.0.0.1 Mask:255.0.0.0

[root@moni01 tmp]#

当然,这粗略的匹配,更精确的匹配思路有,配了好久都没成功,晕~~

匹配思路:

(1)第一列最少一位数,最多三位数,是三位数的不能大于255

(2)第一列一位数是不能是0

(3)最后一列是三位数时,不能是255

(4)最后一列是一位数时,不能是0

一位数: [0-9]

两位数: 10~99  [1-9][0-9]

三位数: 100~255

100~199 、 1[0-9]{2}

200~249、  2[0-4][0-9]

250~255   25[0-5]

第一列:

是一位数:[1-9]

第四列

不能是0 , 255

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/552643.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

超级好用的一个php上传图片类(随机名_缩略图_加水印),超级好用的一个php上传图片类(随机名,缩略图,加水印)...

Upimages.class.php php上传类复制代码 代码如下:class UpImages {var $annexFolder "upload";//附件存放点,默认为:annexvar $smallFolder "small";//缩略图存放路径,注:必须是放在 $annexFolder下的子目录…

java pair class,在Java Pair Class Tuple中获取值

使用该getValueX()方法从Java的Pair Tuple类中的特定索引处获取值。例如,getValue0()。首先让我们看看使用JavaTuples所需的工具。要在JavaTuples中使用Pair类,您需要导入以下包-import org.javatuples.Pair;注-下载和运行JavaTuples程序的步骤。如果您正…

matlab读取data格式,ReadData3D 各种格式图像的读取,包括医学 效果很好 matlab 272万源代码下载- www.pudn.com...

文件名称: ReadData3D下载 收藏√ [5 4 3 2 1 ]开发工具: matlab文件大小: 51 KB上传时间: 2017-03-29下载次数: 0提 供 者: 李忠宽详细说明:各种格式图像的读取,包括医学图像的读取,效果很好-Various formats of image reading, inclu…

mysql vs2008,vs2008 使用mysql

近期转到研发岗,需要用到mysql、vs2008;之前由于没有做过,写下这篇文章记录下这周所学的东西!先安装好相关软件安装时间比较久耐心等待......安装完毕之后打开vs,Tools -> opptions ->设置完毕之后,点…

matlab pretty什么用,matlab如何使输出结果更美观(symdisp函数——pretty函数升级版)...

EDA365欢迎您登录!您需要 登录 才可以下载或查看,没有帐号?注册x& t7 n0 d: a# m0 O( y- Lmatlab中有些计算结果比较长,直接查看有些困难,下面介绍pretty和symdisp函数优化输出结果,使结果更为直观。- …

基于matlab的fir数字滤波器设计开题报告,基于matlab的fir数字滤波器仿真与设计(开题报告)(共9篇).docx...

基于matlab的fir数字滤波器仿真与设计(开题报告)(共9篇) 毕业论文 开题报告 系别电子信息工程系专业电子信息工程班级学生姓名学号指导教师XXX报告日期 毕业论文开题报告表 1、课题来源 2、研究目的和意义 3、国内外研究现状和发展趋势及综述 4、本课题的主要研究内容及…

php explode 循环,PHP explode 切割字串 快速取得最後一個值

選取月份2021 年 3 月 (13)2021 年 2 月 (13)2021 年 1 月 (20)2020 年 12 月 (24)2020 年 11 月 (20)2020 年 10 月 (19)2020 年 9 月 (22)2020 年 8 月 (21)2020 年 7 月 (23)2020 年 6 月 (20)2020 年 5 月 (20)2020 年 4 月 (19)2020 年 3 月 (22)2020 年 2 月…

php 留言板项目 ajax,PHP Ajax留言板

本案例代码已经提供下载,点击这里!AJAX即“Asynchronous JavaScript and XML”(异步JavaScript和XML),AJAX并非缩写词,而是由Jesse James Gaiiett创造的名词,是指一种创建交互式。Ajax的核心是JavaScript对象XmlHttpRe…

php如何设计自定义模型,php – Kohana ORM模型中的自定义方法

我有这两个模型:class Model_user extends ORM {protected $_has_many array(credits, array(model>credit, foreign_key>user));}class Model_credit extends ORM {protected $_belongs_to array(user, array(model>user, foreign_key>user));protec…

php过滤掉不乱码json,PHP JSON编码后,中文乱码的解决方式

1,有些时候,需要写接口,传递一些中文值,那么JSON编码,会出现目前以下两种情况!a.输出乱码$testJSONarray(name>中文字符串,value>test);echo json_encode($testJSON);?>输出结果:{“n…

php 遮罩层,Jquery实现遮罩层的方法

本文实例讲述了Jquery实现遮罩层的方法。分享给大家供大家参考。具体如下:1、假设#main为页面body中的最外层Div标签2、背景被遮罩后,显示的弹出窗(默认是不显示的,所包含的CSS这里就不贴了):xAttention!3、在script.js中定义遮罩…

php中append,插入节点append()、insertAfter()的特殊用法:对原有DOM元素进行移动

插入节点的方法: append()/appendTo()、prepend()/prependTo()、after()/insertAfter()、before/insertBefore()这些插入节点的方法不仅能将新创建的DOM元素插入到文档中,也能对原有的DOM元素进行移动(若对已在文档中存在的元素使用插入节点的方法则相当于执行“移动…

nhinx php 调优,高流量站点NGINX与PHP-fpm配置优化

本文由LinuxProbe.Com团队成员岳国帅整理发布,原文来自:黑白。导读使用Nginx搭配PHP已有7年的经历,这份经历让我们学会如何为高流量站点优化NGINX和PHP-fpm配置。以下正是这方面的一些提示和建议:1. 将TCP切换为UNIX域套接字1. 将…

python怎么导入apscheduler,如何强制apscheduler将作业添加到作业存储?

我正在使用apscheduler使用脚本向调度程序添加作业。不幸的是,由于我没有启动调度程序,所以在使用脚本时没有正确安排作业。在scheduler self.getscheduler() # initializes and returns schedulerscheduler.add_job(triggertrigger, func function, j…

php rinit,PHP执行原理

一:PHP简介:PHP:Hypertext Preprocessor 也就是“超文本预处理器”,是一种通用的开源脚本语言。语法吸收了C语言,Java和Perl的特点,使用广泛,主要适用于Web开发领域。二:PHP的设计理…

php 放大镜,图片放大镜效果实战总结

摘要:本次实战主要完成了图片放大镜的效果,通过定义原始图片,放大镜,放大后的图片,然后设置放大后的图片为原始图片的3倍,通过鼠标移上显示放大后的图片,并通过位移计算当前放大镜的位置&#x…

oracle未授权sql查询,【oracle使用笔记3】sql查询遇到的若干问题总结

在整个开发过程当中,sql查询操做的频率比较高,在不一样的业务场景下会出现不一样的查询需求,如下是我在项目中遇到的查询需求,总结一下。sql【查询一】:取查询出的第一条数据oracleselect * from (select * from [ta…

linux内核mtd分区,linux-kernel – 在运行时调整MTD分区大小

我正在使用嵌入式设备,并希望能够通过Linux调整其MTD分区大小而无需重新启动.问题是我的Linux映像大小已经增加,它所在的当前MTD分区(mtd0)现在太小了.但是,它之后的分区(mtd1)是用于存储配置信息的JFFS2部分,因此重新调整大小不是一个选项,因为配置可能会丢失.我的目标是&…

linux 查看握手时间,实战:tcpdump抓包分析三次握手四次挥手

本文档以实战的形式介绍tcpdump抓包分析三次握手四次挥手的过程。执行tcpdump命令tcpdump -n -i ens32 host 192.168.10.10 and 42.186.113.26 >> /tmp/tcpdump.txtping game.campus.163.comcurl http://game.campus.163.comcurl http://game.campus.163.com结束后&#…

linux 高级i o函数,高级I/O函数

对于socket,最基本的输入输出函数就是,read和write。它们最基本,同样功能也是最少的。Unix中有几个函数是read/write的变种,在基本的输入输出功能上,还增加了一些非常使用的功能和特性,它们是:r…