解析目录并检测意外空白
Parsing directories and detecting unexpected blanks
我正在尝试解析一些目录并识别文件夹 没有特定的正确模式。让我们举例说明:
Correct: Level1\Level2\Level3\Level4_ID\Date\Hour\file.txt
Incorrect: Level1\Level2\Level3\Level4\Date\Hour\file.txt
注意,错误的没有_ID。我的最终目标是解析数据,替换 '\' 作为要为 MS excel:
导入的定界符
Level1;Level2;Level3;Level4;ID;Date;Hour;file.txt
Level1;Level2;Level3;Level4; ;Date;Hour;file.txt
我已经成功解析了所有正确的数据,执行了以下步骤:
让文件成为我所有目录的列表
for i in arange(len(files)):
processed_str = files[i].replace(" ", "").replace("_", "\")
processed_str = processed_str.split("\")
我的问题是使用相同的脚本检测 Level4 文件夹下划线后是否有 ID,因为 "files" 包含正确和不正确的目录。
问题是,由于不正确的没有 ID,在执行 split("\") 之后,我最终将列混合在一起,在 Level4 和 Date 之间没有空白:
Level1;Level2;Level3;Level4;Date;Hour;file.txt
谢谢,
拆分目录后检查“_ID”,这样就不会丢失信息。假设目录名称本身不包含转义的反斜杠并且 ID 字段始终处于级别 4(从 1 开始计数),应该这样做:
for i in arange(len(files)):
parts = files[i].split("\")
if parts[3].endswith("_ID"):
parts.insert(4, parts[3][:-len("_ID")])
else:
parts.insert(4, " ")
final = ";".join(parts)
我正在尝试解析一些目录并识别文件夹 没有特定的正确模式。让我们举例说明:
Correct: Level1\Level2\Level3\Level4_ID\Date\Hour\file.txt
Incorrect: Level1\Level2\Level3\Level4\Date\Hour\file.txt
注意,错误的没有_ID。我的最终目标是解析数据,替换 '\' 作为要为 MS excel:
导入的定界符Level1;Level2;Level3;Level4;ID;Date;Hour;file.txt
Level1;Level2;Level3;Level4; ;Date;Hour;file.txt
我已经成功解析了所有正确的数据,执行了以下步骤: 让文件成为我所有目录的列表
for i in arange(len(files)):
processed_str = files[i].replace(" ", "").replace("_", "\")
processed_str = processed_str.split("\")
我的问题是使用相同的脚本检测 Level4 文件夹下划线后是否有 ID,因为 "files" 包含正确和不正确的目录。 问题是,由于不正确的没有 ID,在执行 split("\") 之后,我最终将列混合在一起,在 Level4 和 Date 之间没有空白:
Level1;Level2;Level3;Level4;Date;Hour;file.txt
谢谢,
拆分目录后检查“_ID”,这样就不会丢失信息。假设目录名称本身不包含转义的反斜杠并且 ID 字段始终处于级别 4(从 1 开始计数),应该这样做:
for i in arange(len(files)):
parts = files[i].split("\")
if parts[3].endswith("_ID"):
parts.insert(4, parts[3][:-len("_ID")])
else:
parts.insert(4, " ")
final = ";".join(parts)