import re
tags = [
"letter1=A&letter2=B&letter3=C",
"letter1=D&letter2=E&letter3=F"
]
pat=re.compile("(\w+)=(\w+)")
for tag in tags:
print(pat.findall(tag))
from itertools import chain
tags = ["letter1=A&letter2=B&letter3=C",
"letter1=D&letter2=E&letter3=F"]
tags = chain.from_iterable(item.split("&") for item in tags)
result = [item.split("=")[1] for item in tags]
# ['A', 'B', 'C', 'D', 'E', 'F']
根据您的模式,您不能真正获得A B C,因为C周围没有=和&。此代码
import re
from itertools import chain
tags = ["letter1=A&letter2=B&letter3=C",
"letter1=D&letter2=E&letter3=F"]
pattern = re.compile("=(.*?)&")
result = ' '.join(chain.from_iterable([pattern.findall(item) for item in tags]))
代码:
输出:
对于预期的输出,请查找结尾处有一个或没有
&
符号的=
后面的字母:要真正得到答案,您可以使用
split
:根据您的模式,您不能真正获得
A B C
,因为C
周围没有=
和&
。此代码给予
相关问题 更多 >
编程相关推荐