Python 如何解析混合的单行和多行文本?
Python 如何解析混合的单行和多行文本?,python,regex,csv,subprocess,Python,Regex,Csv,Subprocess,我想从CM synergy数据库中查询任务信息。 我使用以下python脚本片段: cmd = "ccm task -query -release " + release_name + \ " -format \"%displayname; %task_synopsis; %task_description; %owner; %completion_date; %status\"" (status, output) = subprocess.getstatusoutput
我想从CM synergy数据库中查询任务信息。 我使用以下python脚本片段:
cmd = "ccm task -query -release " + release_name + \
" -format \"%displayname; %task_synopsis; %task_description; %owner; %completion_date; %status\""
(status, output) = subprocess.getstatusoutput(cmd)
print("status: {}".format(status))
print("output: \n{}".format(output))
然后我得到如下类似输出文本,其中第三列中有多行:
1179836; Development projects dev/1.0; Init tools yangli; 3/29/17 4:05 PM; completed
Result: no
Comment: This is a testing review comment, it's ok.;
那么如何将它们解析为.csv格式的文件呢?
我想知道我如何才能得到完整的第三栏,其中有许多行。
提前非常感谢。这不是CSV。CSV确实支持嵌入的换行符,但方式不同。我怀疑您必须编写一个完整的自定义解析器来跟踪缩进级别并以树状结构连接“列”。对output.split(“;”)中的项执行
[item.strip()]是有意义的。
。这将为一组查询字段生成数据,其中一些字段中碰巧有换行符。奇怪的是,它们似乎与-format
中给出的字段不匹配。您确定该命令生成了输出吗?如果您只需要第三列,那么这就是您需要的格式。