как найти слово (строку) в excel, присутствует ли оно в файле excel (xlsx) или нет? - PullRequest
0 голосов
/ 17 июня 2020

как найти слово (строку) в Excel, присутствует ли оно в файле Excel (xlsx) или нет?

Мне нужно найти строку и заменить ее другим srting.

def xlsxElementsRemove():
    print(xlsxFileList)
    for i in xlsxFileList:
        data = pd.read_excel(i)
        data1 = data.replace(np.nan, '', regex=True)
        data1.columns = data1.columns.str.replace('Unnamed.*', '')
        for j in userInputForRemove:
            pattern = re.compile(j, flags=re.IGNORECASE)
            data1 = data1.replace(pattern, '', regex=True)
        data1.to_excel(i, index=False)

xlsxElementsRemove()

здесь я получаю одну проблему, например, предположим, у меня есть слово «stackOverflow» в файле Excel (xlsx), но когда я даю ввод как "sta c", "stackOver", "stackOverflo" его заменяет. Все, что мне нужно, когда я вводю как "stackOverflow", тогда только он должен заменять слово, иначе нет.

1 Ответ

0 голосов
/ 02 июля 2020
def xlsxElementsRemove():
    global allElementInExcel
    allElementInExcel = []
    for i in local_xlsxFileList:
        wb = open_workbook(i)
        for s in wb.sheets():
            for row in range(s.nrows):
                col_value = []
                for col in range(s.ncols):
                    value = (s.cell(row, col).value)
                    try:
                        value = str(int(value.split()))
                    except:
                        pass
                    col_value.append(value)
                    col_value = [x for x in col_value if x]
                allElementInExcel.extend(col_value)
                allElementInExcel = (re.split(r'(?:[^\w.]|_)+', ','.join(map(str.lower, map(str, allElementInExcel)))))
        data = pd.read_excel(i)
        data1 = data.replace(np.nan, '', regex=True)
        data1.columns = data1.columns.str.replace('Unnamed.*', '')
        for j in userInputForRemove:
            if j in allElementInExcel:
                pattern = re.compile(r'\b'+j+r'\b', flags=re.IGNORECASE)
                data1 = data1.replace(pattern, "", regex=True)
        data1.to_excel(i, index=False)
xlsxElementsRemove()

Этот код у меня сработал. Я только что написал этот скрипт, который удалит все одиночные символы, присутствующие в файле.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...