[英]How to extract images from a Text in python (regex)
假设我们有文本,其中图像以以下形式存储:
some text File:image1.extension some text File:image2.extension
如何从python文本中提取所有图像?
我试过了
re.findall('File:(.+?\.(jpe?g|svg|png|gif))', text, re.IGNORECASE)
但这并没有完成。
https://regex101.com/r/PLKREz/3
如何在Python中完成?
如果您的原始字符串raw_string
类似于:
File:image1.png
File:image1.pdf
File:image1.gif
File:image1.txt
File:image1.jpeg
然后,您可以使用正则表达式File:.+?\\.((pdf)|(png)|(gif)|(jpeg))
。 在Python中变成:
re.findall(r'File:.+?\.((pdf)|(png)|(gif)|(jpeg))', raw_string)
这只会检索您在外部括号内指定的文件格式,以|
分隔|
运算符,在此示例中,除文件以.txt
结尾的所有内容。
您可以使用
regex = r"\[\[File:(\S+\.(?:jpe?g|png|[tg]iff?|svg))"
模式匹配
\\[\\[File:
-两个[
s和一个File:
子字符串 (\\S+\\.(?:jpe?g|png|[tg]iff?|svg))
-捕获到组1中(因此,仅作为re.findall
的结果返回此子re.findall
)
\\S+
-1个或多个非空白字符 \\.
-一个点 (?:jpe?g|png|[tg]iff?|svg)
-非捕获组内部的替代方法之一(这样它就不会在re.findall
结果中输出): jpeg
, jpg
, tiff
, gif
(甚至giff
)或svg
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.