声明:本文乃“运维家”原创,转载请注明出处,更多内容请关注公众号“运维家”。
主旨
python的风评,就不多说了,现在搞技术的人们几乎或多或少的都会点儿python,不管多少,总归是会点儿。但是我觉得最头疼的就是python的正则了,乱七八糟,而且没有一点儿顺序性,特别难记,所以这里整理下,以后也方便回忆查找,建议收藏。
环境
linux 环境
python3.0+ 环境
PS:如果不知道如何在linux上安装python3.0以上的版本,在公众号“运维家”后台回复“103”,即可获取安装操作手册。
概念
可能会有同学问,什么是正则表达式,为什么要掌握正则表达式,简单来说,正则表达式是为高级的文本模式匹配、抽取、与/或文本形式的搜索和替换功能提供了基础。
太绕了是不是?换种说法就是,你可以通过正则表达式,来从一堆杂乱无序的字符中,提取到你需要的信息,比如手机号、美女、地址等信息。
最常用的
表示方法:
re1|re2
解释:
匹配正则表达式 re1 或者 re2
表达式示例:
yunwei|jia
---------------------------------------------
表示方法:
.
解释:
匹配任何字符(除了\n之外)
表达式示例:
a.a
---------------------------------------------
表示方法:
^
解释:
匹配字符串起始部分
表达式示例:
^Dear
---------------------------------------------
表示方法:
$
解释:
匹配字符串终止部分
表达式示例:
/bin/*sh$
---------------------------------------------
表示方法:
*
解释:
匹配0次或者多次前面出现的正则表达式
表达式示例:
[A-Za-z0-0]*
---------------------------------------------
表示方法:
+
解释:
匹配一次或者多次前面出现的正则表达式
表达式示例:
[a-z]+\.com
---------------------------------------------
表示方法:
?
解释:
匹配0次或者一次前面出现的正则表达式
表达式示例:
goo?
---------------------------------------------
表示方法:
{N}
解释:
匹配N次前面出现的正则表达式
表达式示例:
[0-9]{5,9}
择一匹配符号
表示择一匹配的管道符号(|),也就是键盘上的竖线,表示一个“从多个模式中选择其一”的操作。它用于分割不同的正则表达式。例如:
表达式:
abc|nihao
能匹配到的内容:
abc和nihao
表达式:
123a|888B
能匹配到的内容:
123a和888B
表达式:
abc|123|ggg
能匹配到的内容:
abc、123、ggg 这三个都可以匹配到
匹配任意单个字符
剩余内容请转至公众号 “运维家” ,回复 “104” 查看。