gpt4 book ai didi

php - CSV 损坏,我该如何修复?

转载 作者:可可西里 更新时间:2023-11-01 07:37:58 25 4
gpt4 key购买 nike

我正在尝试解析 CSV。我想将它放入数据库或仅使用 JavaScript 对其进行解析,但由于语法损坏,任何一种方法都失败了。我的整个 CSV 文件在这里:
https://gist.github.com/1023560

如果你注意到,它会在双引号中有双引号的地方中断,并且在插入 MySQL 时也会失败。第 13 行出现第一个中断。它中断了,而不是返回完整的:

 <a href="http://www.facebook.com/pages/Portland-Community-Gardens/139244076118027?v=wall" target="_blank"><img src="/shared/cfm/image.cfm?id=348340" alt="Facebook" width="100" height="31" /></a>

它返回:

<a href="

对于 JavaScript,我打算只使用 Ben Nadel 的 CSVToArray():
http://www.bennadel.com/blog/1504-Ask-Ben-Parsing-CSV-Strings-With-Javascript-Exec-Regular-Expression-Command.htm

我的最终目标是放入 MySQL,这样我就可以用 PHP 的 json_encode() 回显一个 JSON 提要.

我注意到可能有问题的是双引号可以像上面那样出现在 HTML 标签中,但也可以作为 HTML 标签的文本节点,所以 "<span class="text">"Example"</span>"

第一组引号是 CSV 列,第二组是 HTML 引号,第三组是文本引号。

最佳答案

可能能够欺骗它并使用正则表达式来查找:

"(.*?)"(?=,|$)

但这是一种 hack-ish(基本上,只有在紧跟逗号或行尾时才接受结束引号)。同样的逻辑也适用于查找替换。 (同样,这一切都假设“流浪”引号永远不会遵循标准的 CSV 规则(例如,在它之前或之后有一个逗号/行[开始/结束]))

我假设您无法控制原始数据并且必须使用您拥有的数据?

编辑

虽然我只在你的数据的样本上尝试过,但这似乎找到了“杂散”引号,你可以用 "" 上:

(?<!^|"|,)"(?!"|,|$)

关于php - CSV 损坏,我该如何修复?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6335811/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com