Logic Apps:无需遍历过滤数组首尾特殊字符的方法
高效过滤首尾含转义符号的IP数组
已知数组仅首尾元素存在异常(首元素带[\"前缀,尾元素为纯\"]),且数组长度极大,无需遍历所有元素,可直接针对首尾操作完成过滤:
JavaScript 实现
const ips = [ "[\"185.241.208.232", "194.26.192.64", "171.25.193.25", "\"]" ]; // 修正首元素,移除开头的 "[\" const correctedFirstIp = ips[0].substring(2); // 拼接修正后的首元素 + 中间所有正常元素(跳过最后一个无效元素) const filteredIps = [correctedFirstIp, ...ips.slice(1, -1)]; console.log(filteredIps); // 输出:["185.241.208.232", "194.26.192.64", "171.25.193.25"]
Python 实现
ips = [ '["185.241.208.232', '194.26.192.64', '171.25.193.25', '"]' ] // 修正首元素,移除前2个字符 corrected_first = ips[0][2:] // 组合结果:修正后的首元素 + 中间正常元素 filtered_ips = [corrected_first] + ips[1:-1] print(filtered_ips); // 输出:['185.241.208.232', '194.26.192.64', '171.25.193.25']
核心思路
- 仅对首元素做字符串截取,移除多余的转义前缀;
- 通过数组切片直接获取中间所有正常元素,跳过最后一个无效的尾元素;
- 全程无需遍历整个数组,操作时间复杂度为O(1)(仅涉及固定次数的元素访问和切片),完全适配超长数组的性能需求。
内容的提问来源于stack exchange,提问作者HarriS
相关产品推荐
相关产品推荐

