1
我需要提取双Male-Cat
:用正则表达式字边界 - 不能提取所有的词
a = "Male-Cat Male-Cat Male-Cat-Female"
b = re.findall(r'(?:\s|^)Male-Cat(?:\s|$)', a)
print (b)
['Male-Cat ']
c = re.findall(r'\bMale-Cat\b', a)
print (c)
['Male-Cat', 'Male-Cat', 'Male-Cat']
我需要提取树倍Male-Cat
:
a = "Male-Cat Male-Cat Male-Cat"
b = re.findall(r'(?:\s|^)Male-Cat(?:\s|$)', a)
print (b)
['Male-Cat ', ' Male-Cat']
c = re.findall(r'\bMale-Cat\b', a)
print (c)
['Male-Cat', 'Male-Cat', 'Male-Cat']
这是正确的第一种方式解析另一个字符串:
a = 'Male-Cat Female-Cat Male-Cat-Female Male-Cat'
a = 'Male-Cat-Female'
a = 'Male-Cat'
有什么遗漏吗?你能解释什么是错的,什么是正确的方法?
请参阅[在线Python演示](https://ideone.com/5CZf8P)。 –