GG资源网

python正则表达式中‘|’是什么意思?

问题描述:

谢谢!
python正则表达式中‘|’是什么意思?

|

A | B,表示匹配正则表达式 A 或者 B

网友观点:

'|'是“或”的意思,当“|”两边的表达式有一个或两个为“真”或者“非0”,则表达式结果为1;当“|”两边的表达式两个都为“假”或者“0”,则表达式结果为0。
如:
2 | 0,结果=1
1 | 1,结果=1
0 | 1,结果=1
0 | 0,结果=0
(2<1)| (2>1),结果=1
(2>1)| (3>1),结果=1
(2<1)| (0>1),结果=0

答案不都被你说出来了吗

网络工程师Python正则表达式(零基础入门,第1节,正则表达式语法)

哈喽,大家好,我又来了。前期我直接跳过Python正则表达式的基础内容,从re模块的使用写起,但发现不少知友似乎比较难切入。因为无论哪个模块,多少都有些知友跟我互动一下,而re模块的几篇,阅读量极低,也没遇到过一次互动。伤心...于是,这篇起,我回过头来,从网络工程师需要的最基础的正则表达式开始梳理。

〇、参考资料

本专栏简介及目录入口,如果你不知道从何读起,建议从这篇《目录》开始,连接如下:

本文部分参考知乎专栏 @弈心 《网路行者》实验思想,推荐移步阅读。

本文部分参考书籍《Python for network engineers》,纯英文,推荐移步阅读。

一、正则概述

1.1 正则表达式引入

先来个“定义”:

正则表达式是由普通字符和特殊字符组成的序列,可以称之为“模板”。凭借它,我们在文本中查找、搜索甚至替换特定信息,便有章可循了。

再来个“笑话”:

【“笑话”原文】Some people, when confronted with a problem, think “I know, I’ll use regular expressions.” Now they have two problems.
【“笑话”翻译】当遇到一个问题的时候,你意识到这个问题可以用正则表达式来解决时,于是,你就有两个问题了。

这“笑话”阐述了正则表达式本身就是一个问题。一言以蔽之,正则表达式好用,但有难度。

正则表达式可以说是各行各业处理数据的“祖传”工具。作为网络工程师我们,无论当下传统的CLI还是前景可期的API,基本都是通过“数据”进行人机交互。它的内容又很多很杂,这一系列我仅梳理一些网络工程师比较常用的。

1.2 正则表达式作用

同学们初期接触正则表达式一定会觉得复杂,不知道如何下手。凡事先提纲挈领,网络运维中它能干嘛呢?

  • (1)在CLI命令回显中,提取我们想要的信息,检查配置设置是否准确。
  • (2)按照我们制定的模板规则,解析大篇幅命令回显或配置。

上面的表述可能有点抽象,咱们结合实际来说。

  • (1)从报文回显中提取或过滤出设备版本、运行时间、端口up/down等信息。
  • (2)在老长老长的LOG日志中捕捉你想要的,在老长老长的配置中检查接口配置是否符合规范等。

简单说,正则表达式让你可以在“报文山配置海”中快速锚定你想要的那个它!而且,你不仅仅能搜索定位提取,你还能原地修改它。

二、语法初探

2.1 方法search() 初探

Python通过官方的re模块实现正则表达式规则。因此,使用正则表达式之前,我们需要引入re模块。该模块的方法很多,我们先重点聚焦search方法,用以学习正则表达式基础语法。

由于网站搬家,部分链接失效,如无法下载,请联系站长!谢谢支持!
1. 带 [亲测] 说明源码已经被站长亲测过!
2. 下载后的源码请在24小时内删除,仅供学习用途!
3. 分享目的仅供大家学习和交流,请不要用于商业用途!
4. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
5. 本站所有资源来源于站长上传和网络,如有侵权请邮件联系站长!
6. 没带 [亲测] 代表站长时间紧促,站长会保持每天更新 [亲测] 源码 !
7. 盗版ripro用户购买ripro美化无担保,若设置不成功/不生效我们不支持退款!
8. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
9. 如果你也有好源码或者教程,可以到审核区发布,分享有金币奖励和额外收入!
10.如果您购买了某个产品,而我们还没来得及更新,请联系站长或留言催更,谢谢理解 !
GG资源网 » python正则表达式中‘|’是什么意思?

发表回复

CAPTCHAis initialing...