У меня есть таблица Excel, которая выглядит следующим образом:
Row1 : some text
some other row : "ABC Col" "DEF Col" "GHI Col" "JKL Col"
following rows : more text
Я пытаюсь найти строку, содержащую ABC и JKL.Обратите внимание, что строка, которую я передаю, может не соответствовать точному заголовку столбца.
Я использую xlrd
и делаю что-то вроде этого:
setOfheadings = set(['ABC', 'JKL'])
found_header = False
for i in range(1,sheet.nrows):
if ((not found_header)):
setOfRowValues = set([element.upper() for element in sheet.row_values(i)])
if len(setOfheadings.intersection(setOfRowValues)) == len(setOfheadings):
(found_header, header_row) = (True,i)
Так как 'ABC' не совсем точносопоставьте «ABC Col» в таблице.Это не удается.Это работает, если мой setOfheadings
содержит точное совпадение.
Любые идеи о том, как я могу сделать регулярное выражение с пересечением множества?