Я полагаю, что вы можете сделать это без регулярного выражения:
Метод 1
list1 = ['U|blah|USAA032812134||blah|blah|25|USAA032812134|blah|A||4||blah|2019-05-28 12:54:59|blah|123456||blah']
list2 = ['|USAA032812134', '|USAA0328121304', '|USAA032999812134']
found = []
for i in list1:
for j in list2:
if j in i:
found.append(j)
print(found)
Выход 1
['|USAA032812134']
Метод 2 с использованием понимания списка
list1 = ['U|blah|USAA032812134||blah|blah|25|USAA032812134|blah|A||4||blah|2019-05-28 12:54:59|blah|123456||blah']
list2 = ['|USAA032812134', '|USAA0328121304', '|USAA032999812134', 'blah']
print([j for i in list1 for j in list2 if j in i])
Выход 2
['|USAA032812134', 'blah']
Метод 3: strip()
для новых строк
Вы можете просто strip()
и append()
на свойfound
список:
list1 = ['U|blah|USAA032812134||blah|blah|25|USAA032812134|blah|A||4||blah|2019-05-28 12:54:59|blah|123456||blah']
list2 = ['smuspid\n', 'USAA032812134\n', 'USAA032367605\n', 'USAA032367776\n',
'USAA044754265\n', 'USAA044754267\n']
found = []
for i in list1:
for j in list2:
if j.strip() in i:
found.append(j.strip())
print(found)
Выход 3
['USAA032812134']