Extrahieren Sie mit Python Zeilen, die den Bedingungen entsprechen, aus einer Textdatei

Überblick

Ich habe einen Prozess in Python erstellt, der Text unter Verwendung von Präfixübereinstimmung, Suffixübereinstimmung, Teilübereinstimmung und exakter Übereinstimmung unter Verwendung mehrerer Bedingungen extrahiert. Ursprünglich habe ich mit Python einen Prozess erstellt, um etwas zu extrahieren und zu entfernen, das einen bestimmten Wortlaut aus einem bestimmten Text enthält, aber ich dachte, dass der Prozess zum Extrahieren allein effektiv wäre, und habe ihn neu erstellt, damit ich diesen Teil teilweise ändern kann. Ich versuchte es.

Dinge notwendig

Dieses Mal gibt es auch eine Exe. Wenn Sie sie also nur ausführen möchten, benötigen Sie kein Python.

Erscheinungsort

Inhalte verarbeiten

Quellenbeschreibung

Der folgende Vorgang erstellt Bedingungen für die Suche.

    def createReg(self):
        searchItems=pd.read_excel('resources/Daten suchen.xlsx')
        sortTypeCode=iniFile.get('info','sortType')

        searchItemArray=np.asarray(searchItems['Suchbegriff'])
        sortType=SORT_ENUM(sortTypeCode)
        if sortType==SORT_ENUM.SORT_LENGTH_ASC or sortType==SORT_ENUM.SORT_LENGTH_DESC:
            searchItemIndex=[]
            for item in searchItemArray:
                searchItemIndex.append(len(item))
            searchSeries=pd.Series(searchItemIndex)
            serchItemDataFrame=pd.concat([searchItems['Suchbegriff'],searchSeries],axis=1)
            if sortType==SORT_ENUM.SORT_LENGTH_ASC:
                sortItems=serchItemDataFrame.sort_values(0,ascending=True)
            else:
                sortItems=serchItemDataFrame.sort_values(0,ascending=False)
            searchItemArray=np.asarray(sortItems['Suchbegriff'])
        regTypeCode=iniFile.get('info','regType')
        regType=REG_ENUM(regTypeCode)
        regStr=''
        for item in searchItemArray:
            if regStr!='':
                regStr=regStr+'|'
            sItem=item
            if REG_ENUM.REG_TYPE_CONTAIN==regType:
                sItem='.*'+item+'.*'
            elif REG_ENUM.REG_TYPE_FRONT==regType:
                sItem=item+'.*'
            elif REG_ENUM.REG_TYPE_BACKWARD==regType:
                sItem='*.'+item
            elif REG_ENUM.REG_TYPE_EXACT_MATCH==regType:
                sItem=item
            regStr=regStr+sItem
        return re.compile(regStr)

Der folgende Prozess wird verwendet, um basierend auf den im obigen Prozess erstellten Bedingungen zu extrahieren.

    def extract(self):
        reg=self.createReg()
        paths=glob.glob('data/*.csv')
        
        fileDict={}

        for pathName in paths:
            extractList=[]
            with open(pathName,encoding=iniFile.get('info','encoding')) as f:
                # targetStrs=f.read()
                for targetStr in f:
                    extractStr=reg.search(targetStr)
                    if extractStr:
                        extractList.append(targetStr)
            fileDict[os.path.basename(pathName)]=extractList
        outputPath=iniFile.get('info','outputPath')
        for key,data in fileDict.items():
            outputFile=outputPath+'extract_'+key+'.txt'
            with open(outputFile,encoding='utf-8',mode='w') as f:
                for d in data:
                    f.write(d)

Wie benutzt man

Wie benutzt man

Recommended Posts

Extrahieren Sie mit Python Zeilen, die den Bedingungen entsprechen, aus einer Textdatei
Extrahieren Sie die xz-Datei mit Python
Lesen Sie die Datei in Python mit einem relativen Pfad aus dem Programm
Lesen Sie mit Python Zeile für Zeile aus der Datei
Extrahieren Sie mit Python Daten von einer Webseite
Ein Memo, dass ich den Datenspeicher mit Python berührt habe
Extrahieren Sie die Vorlage der aus Thunderbird gespeicherten EML-Datei mit python3.7
Ein Programm, das bestimmte Zeichen aus dem eingegebenen Text entfernt
Greifen Sie über das Ausführungsskript mit einem relativen Pfad auf die Datei zu.
Extrahieren Sie den Wert, der einem Wert am nächsten kommt, aus einem Listenelement in Python
Extrahieren Sie mit Python Text aus Bildern
Extrahieren Sie die Targz-Datei mit Python
Versuchen Sie, mit Python3 eine Zeichenfolge aus einem Bild zu extrahieren
Aus einem Buch, das der Programmierer lernen kann ... (Python): Finden Sie den häufigsten Wert
Geben Sie die Zeile mit der angegebenen Zeichenfolge aus der Textdatei aus
Extrahieren Sie Text aus [python] pdf und lesen Sie Zeichen mit Open-Jtalk vor
Die Idee, die Konfigurationsdatei mit einer Python-Datei anstelle von yaml zu füttern
Holen Sie sich OCTA-Simulationsbedingungen aus einer Datei und speichern Sie sie mit Pandas
Die Geschichte, ein Modul zu erstellen, das E-Mails mit Python überspringt
Erstellen einer einfachen Power-Datei mit Python
Überprüfen Sie die Existenz der Datei mit Python
Python3 + Pyperclip, der den kopierten Text neu schreibt
# 5 [python3] Extrahiert Zeichen aus einer Zeichenfolge
Durchsuche das Labyrinth mit dem Python A * -Algorithmus
Lesen wir die RINEX-Datei mit Python ①
Extrahieren Sie japanischen Text aus PDF mit PDFMiner
Erstellen Sie eine große Textdatei mit Shellscript
Erstellen Sie eine Deb-Datei aus einem Python-Paket
Eine typisierte Welt, die mit Python beginnt
[Python] Ein Programm, das die Partitur rundet
Ich habe mit Python eine Einstellungsdatei erstellt
Ein Memo, das durch Umbenennen der Dateinamen im Ordner mit Python organisiert wird
Tipps: [Python] Stellt ein Array nach dem Zufallsprinzip wieder her und extrahiert es aus einer Fasta-Datei
Tipps: [Python] Extrahieren Sie nur Zeilen, die keine bestimmte Zeichenfolge enthalten
Holen Sie sich das durchschnittliche Gehalt eines Jobs mit bestimmten Bedingungen von Indeed.com
Aus einem Buch, das die Denkweise des Programmierers interessanterweise gelernt hat (Python)
Lesen einer CSV-Datei mit Python 2/3
[Python] Holen Sie sich die Dateien mit Python in den Ordner
Mit OpenJtalk auf Japanisch sprechen (Textdatei lesen)
Ich möchte nur verschiedene Zeilen der Textdatei mit diff anzeigen
Lesen Sie eine Datei mit verstümmelten Linien in Python
Mit gTTS auf Japanisch sprechen (Textdatei lesen)
Laden Sie Bilder aus einer Textdatei herunter, die die URL enthält
[Automatisierung] Extrahieren Sie die Tabelle als PDF mit Python
Python - Lesen Sie Daten aus einer numerischen Datendatei und suchen Sie die multiple Regressionslinie.
Erstellen Sie eine Seite, die unbegrenzt mit Python geladen wird
Rund um die Authentifizierung von PyDrive2, einem Paket zum Betreiben von Google Drive mit Python
Erstellen Sie mit Sublime Text3 eine Python3-Build-Umgebung
"Python Kit", das Python-Skripte von Swift aufruft
Ersetzen Sie die eindeutige Darstellung der gelesenen Textdatei durch eine Beschriftung (mit GiNZA).
Speichern Sie das Objekt in einer Datei mit pickle
Erstellen Sie mit Python einen Entscheidungsbaum von 0 (1. Übersicht)
Führen Sie Python-Dateien mit Django aus HTML aus
Zip mit Python extrahieren (unterstützt japanische Dateinamen)
Erstellen Sie mit Python eine Datei im Photoshop-Format (.psd)
Zeichnen Sie ein Faltlinien- / Streudiagramm mit Python Matplotlib für die CSV-Datei (2 Spalten).