我想从文本中提取图像路径,如下所示:
body = 'some text here <br> <img src="/path/to/1234/some_Random_name24.jpg" class="img-responsive" /> </br>'
或者
body = '<br> Hi <img src="/path/to/15004/other_Random_name.png" class="img-responsive" /> other text'
我的正则表达式:
match = re.search(r'src=\"(?P<path1>\"', body)
if match:
print(match.group('path1'))
else:
print("no match found")
但无法捕获任何路径。我该如何解决这个问题?
最佳答案
对于快速而肮脏的黑客,您可以使用
<img[^>]*src="([^"]+)
黄金途径是使用解析器。请参阅a demo on regex101.com 。
<小时/> 在Python
中,这可能是
import re
junk = """body = 'some text here <br> <img src="/path/to/1234/some_Random_name24.jpg" class="img-responsive" /> </br>'
body = '<br> Hi <img src="/path/to/15004/other_Random_name.png" class="img-responsive" /> other text'"""
rx = re.compile(r'<img[^>]*src="([^"]+)')
sources = rx.findall(junk)
print(sources)
哪个产量
['/path/to/1234/some_Random_name24.jpg', '/path/to/15004/other_Random_name.png']
查看另一个demo on ideone.com .
关于python - 无法使用正则表达式获取图像路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57348906/