如何在python中使用正则表达式提取特定单词之前的单词
我需要在特定单词之前提取单词 我的数据是如何在python中使用正则表达式提取特定单词之前的单词,python,regex,match,Python,Regex,Match,我需要在特定单词之前提取单词 我的数据是 data="""70MHeAhULOY8KHVLaBwcQHzAAegQICBAF">Similar</a> </li></ol></div></div></span></div><div class="s"><div> <span class="st">Mail: Consumer Advisory Service, PO
data="""70MHeAhULOY8KHVLaBwcQHzAAegQICBAF">Similar</a>
</li></ol></div></div></span></div><div class="s"><div>
<span class="st">Mail: Consumer Advisory Service, PO Box
1673, MELBOURNE <em>VIC</em> 3001. Email: Click here to
contact us via email. Any personal information you give
;...kJP70MHeAhULOY8KHVLaBwcQIDAKegQIBxAE">Cached </a>
</li></ol></div></div></span></div><div class="s"><div>
<span class="st">Australia. Consumer Advisory Service
GPO Box
1673. MELBOURNE, <em>VIC</em>, 3001. AUSTRALIA. New Zealand.
Cadbury Freepost 577. PO Box 890. Dunedin ...</span>
data=“”70mheahuloy8khvlabwchzaaegqicbaf”>类似
邮件:消费者咨询服务,邮政信箱
1673年,墨尔本维多利亚3001。电子邮件:单击此处查看
通过电子邮件与我们联系。您提供的任何个人信息
;...kJP70MHeAhULOY8KHVLaBwcQIDAKegQIBxAE“>缓存
澳大利亚.消费者咨询服务
GPO盒
1673年,维多利亚州墨尔本,3001年,澳大利亚,新西兰。
吉百利邮政577。邮政信箱890。达尼丁。。。
我正在尝试提取“VIC”之前的单词
我的预期输出是['1673,墨尔本','1673.墨尔本']
,因为我的数据中有两个匹配项
我的代码:
re.find\u all(r“\*+\s(\*)vic”,data)
但不起作用您可以使用此正则表达式提取VIC之前的两个单词
你能分享你到目前为止尝试过的吗?用我的代码更新,请检查你需要使用
beautifulsoup
lib来解析HTML。不,我正在尝试使用正则表达式提取信息。不需要汤对象。你的所有数据都将在此模式中Box 1673,MELBOURNE VIC 3001。
?开始时有文本框?很好,如何仅提取在VIC之前输入一个单词如果只提取一个单词,可以使用此\s+([^\s]+?)\s*VIC
\s+([^\s]+?\s+[^\s]+?)\s*<em>VIC<\/em>
import re
data='70MHeAhULOY8KHVLaBwcQHzAAegQICBAF">Similar</a></li></ol></div></div></span></div><div class="s"><div> <span class="st">Mail: Consumer Advisory Service, PO Box 1673, MELBOURNE <em>VIC</em> 3001. Email: Click here to contact us via email. Any personal information you give ;...kJP70MHeAhULOY8KHVLaBwcQIDAKegQIBxAE">Cached </a> </li></ol></div></div></span></div><div class="s"><div> <span class="st">Australia. Consumer Advisory Service GPO Box 1673. MELBOURNE, <em>VIC</em>, 3001. AUSTRALIA. New Zealand. Cadbury Freepost 577. PO Box 890. Dunedin ...</span>'
d = re.findall(r"\s+([^\s]+?\s+[^\s]+?)\s*<em>VIC<\/em>",data)
print(d)
['1673, MELBOURNE', '1673. MELBOURNE,']