首页 > 其他分享 >re正则--匹配方法

re正则--匹配方法

时间:2022-11-13 16:47:53浏览次数:43  
标签:-- re 正则 flags url https com result

--re.match()方法

语法:re.match(pattern,string,flags) 

其中flags表示的标志位。有以下几种

re.I 忽略大小写
re.L 表示特殊字符集 \w, \W, \b, \B, \s, \S 依赖于当前环境
re.M 多行模式
re.S 即为 . 并且包括换行符在内的任意字符(. 不包括换行符)
re.U 表示特殊字符集 \w, \W, \b, \B, \d, \D, \s, \S 依赖于 Unicode 字符属性数据库
re.X 为了增加可读性,忽略空格和

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

import re
url = 'https://www.baidu.com'
result = re.match('http',url).span()
print(result)

 

 

 不是从头开始匹配的,直接返回None

import re
url = 'https://www.baidu.com'
result = re.match('www',url)
print(result)

 

---re.search()方法

re.search(pattern,string,flags) 扫描整个字符串并返回第一个成功的匹配,和re.match区别是全字符串匹配,不限于头部。

import re
url = 'https://WWW.baidu.com'
result = re.search('www',url,flags=re.I)
print(result)

 

 

 

--re.split()

 re.spilit()方法按照能够匹配的子串将字符串分割后返回列表

语法:split(pattern, string, maxsplit=0, flags=0)

import re
url = 'https://WWW.baidu.com,https://www.taobao.com'
result = re.split(',',url,flags=re.I)
print(result)

 

 

 

 

----re.sub()

匹配字符并且进行替换

语法:sub(pattern, repl, string, count=0, flags=0)

import re
url = 'https://WWW.baidu.com,https://www.taobao.com'
result = re.sub('com','cn',url,flags=re.I)
print(result)

 

--re.findall()

re.findall()用法与其他一样,与re.match和re.search不同的是,re.findall可以匹配多个,用()括起来,返回一个列表,列表的内容就是()内匹配到的字符

import re
url = 'https://WWW.baidu.com,https://www.taobao.com'
result = re.findall('(.*?)//',url,flags=re.I)
print(result)

标签:--,re,正则,flags,url,https,com,result
From: https://www.cnblogs.com/powfu/p/16886240.html

相关文章

  • Vue路由守卫操作-全局路由守卫
     先上代码:router.beforeEach=全局路由守卫//这个东西叫做路由守卫//在我们浏览器上面输入了url地址以后跳转到一个组件去router.beforeEach((to,from,next)=>......
  • 第2-2-4章 常见组件与中台化-常用组件服务介绍-分布式ID-附Snowflake雪花算法的代码实
    目录2.3分布式ID2.3.1功能概述2.3.2应用场景2.3.3使用说明2.3.4项目截图2.3.5Snowflake雪花算法的代码实现2.3分布式ID2.3.1功能概述ID,全称Identifier,中文翻译......
  • OpenGL ES glad 下载和使用
    目录一.glad简介二.glad下载四.glad使用1.OpenGLglfw+glad效果演示2.OpenGLglfw+glad《源码下载》二.猜你喜欢零基础OpenGLES学习路线推荐:O......
  • 关于极角排序
    structpoint{doublex,y;};doublecross(doublex1,doubley1,doublex2,doubley2)//计算叉积{return(x1*y2-x2*y1);}doublecompare(pointk,point......
  • nvm常用命令
    nvmls:列出所有已安装的node版本nvmls-remote:列出所有远程服务器的版本(官方nodeversionlist)nvmlist:列出所有已安装的node版本nvmlistavailable:显示所有可......
  • http hook
    classXMLHttp{request=function(param){};response=function(param){};}lethttpCopy=newXMLHttp();//初始化拦截XMLHttpRequestf......
  • Java特性和优势
    Java特性和优势简单性面向对象可移植性高性能分布式动态性多线程安全性健壮性简单性与C语言不同,Java是一种面向对象编程的语言,它的底层借......
  • 【Spring系列】- 手写模拟Spring框架
    简单模拟Spring......
  • golang fmt && lint
    如何轻松使用格式化和静态检查工具makefmtmakelint 1、go.mod同级目录创建文件Makefilefmt:command-vgofumpt||(WORK=$(shellpwd)&&cd/tmp&&......
  • [VP记录]AGC003
    以后不放题目链接了。[AGC003A]Wannagobackhome普及-。charS[1010];intlen;bools,e,n,w;intmain(){scanf("%s",S+1);len=strlen(S+1);for(inti=1......