我需要从中提取:
<meta content=",\n\n\nÓscar Mauricio Lizcano Arango,\n\n\n\n\n\n\n\nBerner León Zambrano Eraso,\n\n\n\n\n" name="keywords"><meta content="Congreso Visible - Toda la información sobre el Congreso Colombiano en un solo lugar" property="og:title"/><meta content="/static/img/logo-fb.jpg"
其中显示的名字:ÓscarMauricioLizcano Arango和BernerLeónZambranoEraso。
所以它会像
之后的所有内容<meta content="
之前
name="keywords".
另外,使用python,我想将每个名称作为列表的元素。我会对不同的字符串重复多次,名称数量也各不相同(在这种情况下,可能是4个名称而不是2个。)
我怎么能这样做?
答案 0 :(得分:1)
我能够做到这一点
re.findall(r'(?<=content=",)[^.]+(?=name=)', names)
答案 1 :(得分:1)
这可能会对您有所帮助:
# -*- coding: utf-8 -*-
import re
or_str = '<meta content=",\n\n\nÓscar Mauricio Lizcano Arango,\n\n\n\n\n\n\n\nBerner León Zambrano Eraso,\n\n\n\n\n" name="keywords"><meta content="Congreso Visible - Toda la información sobre el Congreso Colombiano en un solo lugar" property="og:title"/><meta content="/static/img/logo-fb.jpg"'
new_str = or_str.replace("\n","")
li = re.findall('meta content=",(.*)" name="keywords"', new_str);
new_str = ''.join(li)
print re.findall('(.*?),',new_str)
我使用replace()
方法将所有换行符\n
更改为NULL
。
然后,我使用findall
查找名称并将其放入列表中,并再次使用findall
将每个名称存储为列表的元素,因为findall
返回一个列表。