我使用Zapier来自动执行我们的许多业务功能,这很棒,但是我试图计算数组的数量,或者,如果你愿意,还有一个来自字符串的特定字模式。我可以用Zapier格式化器整理字符串,但无法弄清楚如何进行计数。
这是一个整理字符串的例子,其中"已删除:
[{Name:Jon,Surname:Smith},{Name:David,Surname:Michael},{Name:Sam,Surname:Fields},{Name:Katy,Surname:Milnes}]
在这种情况下,我希望指望说"姓名"返回4.
我已经查看了不同的代码示例来计算单词,但是在Zapier的代码操作中无法正确执行它们。这可能非常简单,但我不是来自编码背景,所以一个简单的Java(或Python)脚本可以放入Zapier代码操作或者有关如何解决这个问题的一些指示将非常感激。
由于
答案 0 :(得分:0)
你试图统计这个词真正想要实现的目标是什么?
您是否只想知道数组包含的对象数量?如果是这样的话会有效。假设数组位于inputData
代码步骤中。
var data = JSON.stringify([{'Name':'Jon', 'Surname':'Smith'},{'Name':'David','Surname':'Michael'},{'Name':'Sam','Surname':'Fields'},{'Name':'Katy','Surname':'Milnes'}]);
var inputData = {objArr: data};
// Do not insert the above lines in your code step.
// Set the objArr to your array in the inputData step.
var parsedObjArr = JSON.parse(inputData.objArr);
// Skip the above step if the array is not in the inputData object.
var arrLen = parsedObjArr.length
console.log('Array Length: ', arrLen);
// The line below outputs data from the code step.
output = {arrLen}
同样注意,您无需从JSON字符串中删除引号。
如果数组不在代码步骤的inputData
中,则可以直接在数组上使用length
方法。
答案 1 :(得分:0)
在Python中,您可以将json字符串转换为字典,并使用key作为名称。字典的长度是你要找的。这是一个例子:
import json
from collections import defaultdict
d=defaultdict(list)
x=json.dumps([{'Name':'Jon', 'Surname':'Smith'},{'Name':'David','Surname':'Michael'},{'Name':'Sam','Surname':'Fields'},{'Name':'Katy','Surname':'Milnes'}])
json_string=json.loads(x)
for obj in json_string:
if(obj['Name'] in d):
d[obj['Name']].append([obj['Name']+' '+obj['Surname']])
else:
d[obj['Name']]=[obj['Name']+' '+obj['Surname']]
print(len(d))