首页 > 解决方案 > nodejs将字符串转换为数组以上传到谷歌表格

问题描述

主要目标

  1. 从谷歌表格标签中检索字符串。
  2. 编辑字符串以删除 "s 和 ,s。
  3. 重新格式化字符串以上传到谷歌表格。

我已经完成了我的目标的前两项任务。虽然我会详细解释情况。

我正在查询谷歌表格以返回包含指定字符串的行,以便可以将其添加到新表格中。目前我已经能够很好地检索该行。数据回来看起来像这样。

"12/24/2020, 3:40:33 PM","SanguineDepths+5","钥匙已计时","1000","Aegwynn","@name @name @name @[Manager] name-name ","name#0000 name#0000 name#0000 name#0000","Advertiser-Realm","testing-testing","Ticket","33p2bdlfto9g45","Customer-Realm","Horde",""

然后,我使用以下代码删除了所有的 "s 和 ,s。

const result = `"12/24/2020, 3:40:33 PM","SanguineDepths+5","The Key Is Timed","1000","Aegwynn","@name @name @name @[Manager] name-name ","name#0000 name#0000 name#0000 name#0000","Advertiser-Realm","testing-testing","Ticket","33p2bdlfto9g45","Customer-Realm","Horde",""`

var result1 = result.replace (/,/g, " ");
var result2 = result1.replace (/"/g, "");

现在我的字符串看起来像这样。

12/24/2020 3:40:33 PM SanguineDepths+5 定时 1000 Aegwynn @name @name @name @[Manager] name-name name#0000 name#0000 name#0000 name#0000 Advertiser-Realm testing-testing Ticket 33p2bdlfto9g45客户领域部落

上传删除我不需要的字符的上述字符串时,谷歌表格实际上将所有数据输入一个单元格而不是多个单元格,有没有办法解决这个问题?我确实尝试过使用参数,尽管我希望在一个单元格中使用 4 discord name#0000,并且在自己的单元格中也使用 4 discord @name,就像这样。

输入数据的所需格式

所以我的主要目标是以这样的方式格式化结果,我可以将它们写入自己单元格中的谷歌表格。

编辑#1

我使用了 .split(',') 函数,但谷歌 API 返回以下错误:

“API 返回错误:错误:无效值[1][0]:list_value”

标签: javascriptnode.jsgoogle-apidiscord.js

解决方案


您可以尝试以逗号为目标,以将该点的数据拆分为一个数组,然后注意删除字符。尝试:

result.split(',')

那应该给你一个数组。你可以重新使用你的代码来取出你不需要的字符数组助手:像:

result.split(',').map((part) => {
 return part.replace (/"/g, "")
})


推荐阅读