删除巨大的 .txt 文件中的逗号和后续文本

Remove commas and following text on a huge .txt file

我需要一些帮助来解决这个问题。 我有一个巨大的单词列表作为一个 .txt 文件,几乎有 10 万行。

问题是,有些行后面有一个逗号和一些文本,就像这样

hi, ho
i
am, em
yellow

我需要删除所有包含它们的行的逗号,以及逗号后面的文本以获得这种格式:

hi
i
am
yellow

试试这个

import fileinput
filename='abc.txt'
with open(filename, 'r') as f:
    readl=f.readlines()

with fileinput.FileInput(filename, inplace=True, backup='.bak') as file:
    for line in readl:
        if ',' in line:
             print(line.replace(line.strip('\n'), line.strip('\n').split(',')[0]), end='')

这应该可以解决问题:

out = open("out.txt", "w")
with open("file.txt", encoding="utf-8") as f:
    for line in f.readlines():
        idx = line.find(",") 
        index = idx if idx != -1 else len(line)
        out.write(line[0:idx]+"\n")
out.close()

它从名为 file.txt 的文件中读取行并将格式化后的版本保存到名为 out.txt 的文件中 输入:

hi, ho
i
am, em
yellow
,
hey, ge
gibberish, he
años, luz detrás

输出:

hi
i
am
yellow

hey
gibberish
años

只要不是为了 Python 中的更大项目,我就可以在 PowerShell 中快速完成此类操作。

我刚刚测试了我刚刚根据您提供的示例编写的快速脚本。

$txtfile = get-content C:\YourPath\YourFile.txt
$txtfile[0]
$myarray =@()
foreach ($line in $txtfile){
    $newline = [string]$line.Trim()
    $final = $newline -split ",", 2 | select -First 1
    $myarray += $final
}

$myarray | out-file C:\YourPath\OutFile.txt