python正则表达式匹配不包含某几个字符的字符串方法

yipeiwu_com6年前Python基础

一、匹配目标

文件中所有以https?://开头,以.jpg|.png|.jpeg结尾的字符串

二、尝试过程

1)       

自然想到正则表达式r'(https?://.*?.jpg|https?://.*?.png|https?://.*?.jpeg)简化书写为r'(https?://.*?\.(?:jpg|png|jpeg)

匹配结果:['http://sdsdsdadadsdsdsddsdsdawwii,/zb_users/upload/202003/kt5ib0li0fc.jpg']发现结果并非我们想要的,仔细查看,结果中出现了,或者"等符号,因此需要将这些字符去除

2)更改正则表达式为r'(https?://[^ ",]*?\.jpg|https?://[^ ",]*?\.png)' 简化书写为r'(https?://[^, "]*?\.(?:jpg|png|jpeg))

匹配结果 : [/zb_users/upload/202003/kt5ib0li0fc.jpg']

完美匹配。

以上这篇python正则表达式匹配不包含某几个字符的字符串方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python进程类subprocess的一些操作方法例子

subprocess.Popen用来创建子进程。 1)Popen启动新的进程与父进程并行执行,默认父进程不等待新进程结束。 复制代码 代码如下: def TestPopen(): &nb...

Python中的map()函数和reduce()函数的用法

Python中的map()函数和reduce()函数的用法

Python内建了map()和reduce()函数。 如果你读过Google的那篇大名鼎鼎的论文“MapReduce: Simplified Data Processing on Lar...

python验证码识别教程之利用滴水算法分割图片

python验证码识别教程之利用滴水算法分割图片

滴水算法概述 滴水算法是一种用于分割手写粘连字符的算法,与以往的直线式地分割不同 ,它模拟水滴的滚动,通过水滴的滚动路径来分割字符,可以解决直线切割造成的过分分割问题。 引言 之前提过对...

Pycharm代码无法复制,无法选中删除,无法编辑的解决方法

Pycharm代码无法复制,无法选中删除,无法编辑的解决方法

菜单栏,tools--去掉勾选的Vim Emulator这个仿真插件就好了。 以上这篇Pycharm代码无法复制,无法选中删除,无法编辑的解决方法就是小编分享给大家的全部内容了,希望能...

python通过微信发送邮件实现电脑关机

Python 通过微信邮件实现电脑关机,供大家参考,具体内容如下 通过手机微信发送QQ邮件给sina邮箱,然后利用python的pop3定时检查sina邮箱的邮件主题以及邮件来源,并在电...