gpt4 book ai didi

javascript - Javascript 中的 CSV 分隔符自动检测

转载 作者:数据小太阳 更新时间:2023-10-29 05:01:20 25 4
gpt4 key购买 nike

如何从 Javascript/NodeJS 中的字符串中检测 CSV 分隔符?

什么是标准算法?

请注意,分隔符并不总是逗号。最常见的分隔符是 ;\t(制表符)。

最佳答案

获取可能分隔符的可能算法非常简单,并假设数据格式正确:

  1. 对于每个分隔符,
    1. 对于每一行,
      1. 用分隔符分割行,检查长度
      2. 如果其长度等于最后一行的长度,则这不是有效的分隔符。

概念验证(不处理带引号的字段):

function guessDelimiters (text, possibleDelimiters) {
return possibleDelimiters.filter(weedOut);

function weedOut (delimiter) {
var cache = -1;
return text.split('\n').every(checkLength);

function checkLength (line) {
if (!line) {
return true;
}

var length = line.split(delimiter).length;
if (cache < 0) {
cache = length;
}
return cache === length && length > 1;
}
}
}

length > 1 检查是为了确保 split 不只是返回整行。请注意,这将返回一组可能的定界符 - 如果有多个项目,则会出现歧义问题。

关于javascript - Javascript 中的 CSV 分隔符自动检测,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19053827/

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