【发布时间】:2017-09-20 20:47:01
【问题描述】:
我正在使用 tSoap 组件获取数据,在该组件中,我将 XML 格式的结果作为逗号分隔值。其中列用逗号分隔,行用'\n'分隔。
之后我使用 tExtractXMLField 组件从响应中提取数据。
但在数据中,我在将其视为新行的字符串中有 '\n'。我尝试使用 tReplace 组件使用正则表达式删除引号内的 \n,但数据太大,导致 StackOverflowError。
我也尝试使用 tNomalize 组件使用 CSV 选项分隔行,但问题仍然存在。
你能帮我解决这个问题吗?提前致谢。
我从肥皂请求中得到的响应是:
<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
<env:Header/>
<env:Body>
<ns2:getReportResultCsvResponse xmlns:ns2="http://service.admin.ws.five9.com/">
<return>TIMESTAMP,CALL ID,NOTES
"Mon, 17 Apr 2017 10:05:38",4223519,
"Mon, 17 Apr 2017 10:05:40",4223520,
"Mon, 17 Apr 2017 10:05:41",4223521,"Alexandria..
Monday -- 55 partial
Bal -- 224 May 1
Visa"
"Mon, 17 Apr 2017 10:05:42",4223522,
"Mon, 17 Apr 2017 10:05:43",4223523,
"Mon, 17 Apr 2017 10:11:04",4223524,
"Mon, 17 Apr 2017 10:05:43",4223524,
"Mon, 17 Apr 2017 10:05:45",4223525,</return>
</ns2:getReportResultCsvResponse>
</env:Body>
</env:Envelope>
这里我们可以看到 "notes" 列的数据中包含 '\n' 在引号之间,它会导致提取数据的问题。能 请告诉我如何解决这个问题。
【问题讨论】:
-
您能否就我提出的解决方案向我们提供反馈?
标签: string csv newline quotes talend