【发布时间】:2021-03-14 16:58:21
【问题描述】:
在一个文件中,我有几行具有这种结构:
> Present one time: "Instance: ...Edition: ..."
> Present two times: "Instance: ...Edition: ...Instance: ...Edition: ..."
> Present n times: "Instance: ...Edition: ... [n] Instance: ...Edition: ..."
这种结构可以每行出现一次,也可以在同一行出现多次。思路是逐行读取文件,隔离所代表的值... em> 并将它们写入一个 excel 文件。我可以做到,但如果上面的结构在一行中出现一次,我只能隔离这些值。如果该结构在行上存在不止一次,我只能保存第一个结构的值。 这是我的代码:
#READ FILE
for i in fin:
if "Instance:" in i:
instance = ((i.split('Instance:'))[1].split('Edition')[0])
worksheet.write(row, col, instance)
if "Edition:" in i:
edition = ((i.split('Edition:'))[1].split('\n')[0])
worksheet.write(row, col, edition)
row += 1
知道如何解决这个问题吗?
【问题讨论】:
-
所以你想从字符串中删除每个“Instance”、“Edition:”和“\n”,然后将剩余的内容串联起来?
-
另外,如果“Instance”和“Edition”都存在,那么“Edition”后面的内容会覆盖“Instance”后面的内容,这是你想要的吗?
-
那些不以“Instance”开头但包含“Edition”的行怎么办......这可能吗?现在你的代码允许它。
-
这个想法是,如果行看起来像这样:“实例:1 版本:2 实例:3 版本:4”,我可以隔离 1、2、3、4,但现在用我的代码我只能隔离1和2。希望清楚
标签: python string file substring