【Python学习】Python学习21- 正则表达式(1)

主图==========

目录

【Python学习】Python学习21- 正则表达式(1)


文章所属专区 Python学习


前言

本章节主要说明Python的正则表达式。
正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配。

re.match函数

re.match 尝试从字符串的起始位置匹配一个模式,如果不是起始位置匹配成功的话,match() 就返回 none。
语法:

re.match(pattern, string, flags=0)

参数说明:
在这里插入图片描述
正则表达式可选标志
在这里插入图片描述

实例

#!/usr/bin/python
import re
 
line = "Cats are smarter than dogs"
 
matchObj = re.match( r'(.*) are (.*?) .*', line, re.M|re.I)
 
if matchObj:
   print "matchObj.group() : ", matchObj.group()
   print "matchObj.group(1) : ", matchObj.group(1)
   print "matchObj.group(2) : ", matchObj.group(2)
else:
   print "No match!!"

多行匹配,大小写不敏感,“”are“”的语句

re.search方法

re.search 扫描整个字符串并返回第一个成功的匹配。
语法:
re.search(pattern, string, flags=0)
参数说明:
在这里插入图片描述
实例:

#!/usr/bin/python
import re
 
line = "Cats are smarter than dogs";
 
searchObj = re.search( r'(.*) are (.*?) .*', line, re.M|re.I)
 
if searchObj:
   print "searchObj.group() : ", searchObj.group()
   print "searchObj.group(1) : ", searchObj.group(1)
   print "searchObj.group(2) : ", searchObj.group(2)
else:
   print "Nothing found!!"

在这里插入图片描述

re.match与re.search的区别

re.match只匹配字符串的开始,如果字符串开始不符合正则表达式,则匹配失败,函数返回None;而re.search匹配整个字符串,直到找到一个匹配。

#!/usr/bin/python
import re
 
line = "Cats are smarter than dogs";
 
matchObj = re.match( r'dogs', line, re.M|re.I)
if matchObj:
   print "match --> matchObj.group() : ", matchObj.group()
else:
   print "No match!!"
 
matchObj = re.search( r'dogs', line, re.M|re.I)
if matchObj:
   print "search --> searchObj.group() : ", matchObj.group()
else:
   print "No match!!"

返回:
No match!! #match在字符串开始没有匹配到字符 返回false
search --> searchObj.group() : dogs #search在整个字符串匹配到了字符,返回true

参考

菜鸟教程-Python

给个三连吧 谢谢谢谢谢谢了
在这里插入图片描述

相关推荐

  1. Python学习之路-表达式

    2024-01-21 08:36:01       60 阅读
  2. python每日学习9:表达式

    2024-01-21 08:36:01       29 阅读
  3. Day20-Python基础学习表达式和递归(完结)

    2024-01-21 08:36:01       33 阅读
  4. Python 表达式1 函数基础

    2024-01-21 08:36:01       31 阅读
  5. Python表达式

    2024-01-21 08:36:01       48 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-01-21 08:36:01       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-01-21 08:36:01       106 阅读
  3. 在Django里面运行非项目文件

    2024-01-21 08:36:01       87 阅读
  4. Python语言-面向对象

    2024-01-21 08:36:01       96 阅读

热门阅读

  1. 科普大语言模型中的Embedding技术

    2024-01-21 08:36:01       54 阅读
  2. MySQL死锁场景与应对方案

    2024-01-21 08:36:01       59 阅读
  3. C#设计模式教程(10):装饰器模式

    2024-01-21 08:36:01       51 阅读
  4. Webpack5入门到原理15:提取 Css 成单独文件

    2024-01-21 08:36:01       53 阅读
  5. vue对axios进行二次封装

    2024-01-21 08:36:01       50 阅读
  6. 一文详解pyspark中sql的join

    2024-01-21 08:36:01       54 阅读
  7. 探索Flask中的RESTful API设计与实现

    2024-01-21 08:36:01       50 阅读
  8. hive order by length() 报错

    2024-01-21 08:36:01       47 阅读