如何在Zapier的JavaScript中保留特定字符串并移除其他特殊字符?
解决方案
方法一:按需求保留},{并清理其他特殊字符
你可以通过临时占位符的方式,先保护住},{,再清理其他无关字符,最后恢复分隔符:
let INPUT = inputData.INPUT; // 用临时标记替换目标分隔符,避免被误清理 const tempMarker = "@@SPLIT@@"; let tempStr = INPUT.replace(/},{/g, tempMarker); // 移除所有非字母、数字、空格的字符 let cleanedContent = tempStr.replace(/[^a-z0-9\s]/gi, ''); // 把临时标记还原回},{ let OUTPUT = cleanedContent.replace(new RegExp(tempMarker, 'g'), '},{'); output = [{INPUT, OUTPUT}];
运行后会得到:JAMES SMITH},{SARAH SMITH,之后就能用},{作为标识符拆分记录。
方法二:直接解析JSON(更可靠)
你的输入是标准JSON格式,直接解析成对象数组处理会更稳妥,避免正则匹配的潜在问题:
let INPUT = inputData.INPUT; // 解析JSON为对象数组 const visitorList = JSON.parse(INPUT); // 拼接每个访客的姓名,再用},{分隔 let OUTPUT = visitorList.map(item => `${item["First Name"]} ${item["Last Name"]}`).join('},{'); output = [{INPUT, OUTPUT}];
如果想直接生成每行姓名的最终格式,把join('},{')改成join('\n')即可直接得到:
JAMES SMITH SARAH SMITH
内容的提问来源于stack exchange,提问作者jackstrum
相关产品推荐
相关产品推荐

