Re(正则表达式) 检索替换那些符合的文本

正则表达式在太多的地方用到了,对于信息的筛选re称第一没人称第二了吧,各种命令和几乎所有的语言都支持,linux的grep也支持,python默认也带有re的库
在写爬虫的时候需要匹配所有的url和相关信息等等

实例1:一端ipconfig输出的信息

在这段信息中我想获取其中的所有ipv4地址,首先分析我们需要的ipv4地址信息
在这里插入图片描述

1.它是由数字组成的
2.其中包含三个小数点
3.格式为x.x.x.x x这四段信息可能是1到3位数字,个,十,百
4.当百位数1-2,十位数为0-9,个位数为0-9
根据1知道它用元字符\d,根据2知道用.来转义匹配,根据3知道使用量词 {1,3},根据4知道可以使用[1-2],[0-9]这种来匹配也可以,当然对于上面的信息来说,你知道每次ipconfig输出的都是标准的ipv4地址,而不会存在有333.444.555.666这种的信息,所以可以写出非常多的表达式来匹配出你所需要得信息

使用Regester工具测试下,\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}
在这里插入图片描述

这样子发现把掩码信息也匹配进来了
使用[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3},发现把部分ipv6的信息也匹配进来了
在这里插入图片描述

通常这串输出的信息ip地址结尾是不能是0的,那么我们改成 \d{1,3}.\d{1,3}.\d{1,3}.[1-9]{1,3}
在这里插入图片描述

当然我可能只需要10段地址开始的地址,那么我只需要固定前面匹配的值为10就可以了,这样子的匹配则变得更加精准
10.\d{1,3}.\d{1,3}.[1-9]{1,3}
[0-1]{2}.\d{1,3}.\d{1,3}.[1-9]{1,3}
在这里插入图片描述

实例2:博客里面的一段信息

class ="entry-title" > < a href="http://www.testone.top/?p=933" rel="bookmark" > encode,decode的使用和编码问题 < / a > < / h2 > < span class ="posted-on" > Zss 发表于: < time class ="entry-date published" datetime="2018-09-05T22:32:56+00:00" > 2018
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值