Вот простой способ сделать это (предполагая, что one_day
- это список URL-адресов, а all_countries
- это список названий стран):
# (some example values for urls and country names)
one_day = ['http://www.espncricinfo.com/...-vs-australia-only-odi-au...',
'http://www.espncricinfo.com/...scotland-vs-england-only-...']
all_countries = ['India', 'Ireland', 'Australia']
for day in one_day:
for country in all_countries:
if country.lower() in day:
print(f'found a match for {country}: `{day}`')
# or just: print(day)
Это работает, потому что in
проверяет наличиеподстрока, например:
'Australia'.lower() in '...-vs-australia-only-odi-au...'
## True
Это то, что вы проверяете на каждой итерации внутреннего цикла в условии country.lower() in day
.
ps вы также можете разделить на '-'
, как в оригинальном сообщении, на случай, если вас беспокоит такие случаи, как, например, 'USA'
совпадение с URL-адресом, содержащим '-musac...'
или что-то подобное.Чтобы сделать это, вы могли бы сказать что-то вроде этого:
for day in one_day:
day_split = day.split('-')
for elem in day_split:
if elem in [c.lower() for c in all_countries]:
print(f'found a match: `{day}`')