公式split使用问题

split("1,2,,,,",",") 返回一个数组[1,2]

怎样才能split让他返回[1,2,,,,] 这样长度为6的数组?

image.png

FineReport Y轲 发布于 2023-8-28 17:02 (编辑于 2023-8-28 17:15)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
CD20160914Lv8专家互助
发布于2023-8-28 17:04(编辑于 2023-8-28 17:25)

你先说一下你数据是如何的,最终要做什么吧?截图出来看看

------你自己改成你要判断的--------------

if(len(SPLIT("1,33,2",","))>3,0,INDEXOFARRAY(SPLIT("1,33,2",","),3))

  • Y轲 Y轲(提问者) 就是一个长度为6的数组[1,2,,,,]先转成字符串用\",\"分隔的,然后在报表里公式split拆分回去数组,由于数组最后几个数是null,即字符串末端是\",,,,\"这样的形式,导致报表里转换出的数组长度只有2。 导致我获取数组第4个元素的时候,报表返回的是#NAME?,我希望返回的是null或者是空字符串。
    2023-08-28 17:11 
  • CD20160914 CD20160914 回复 Y轲(提问者) 不用这样转换吧,你直接要返回数组有效个数就行了,比如这它只有2个就返回2个,如果有8个就返回8个,我不清楚你的应用,你最好截图与数据
    2023-08-28 17:12 
  • Y轲 Y轲(提问者) 回复 CD20160914 补图了,左边4列是外部传入的参数,然后split拆回数组,现在第五列的LEN(A15)数值会有问题
    2023-08-28 17:17 
  • CD20160914 CD20160914 回复 Y轲(提问者) len(a15)有什么问题?看不懂
    2023-08-28 17:19 
  • Y轲 Y轲(提问者) 回复 CD20160914 比如传进来的$taskName=\"a,b,c,\" Len(a15)返回的是3,我要的是4
    2023-08-28 17:20 
最佳回答
0
用户k6280494Lv6资深互助
发布于2023-8-28 17:06

split("1,2,"","","","",",",") 

  • Y轲 Y轲(提问者) 哥们儿你这是几个字符串
    2023-08-28 17:13 
最佳回答
0
IndustryPaysLv6见习互助
发布于2023-8-28 17:09(编辑于 2023-8-28 17:27)

replace 替换+末端补零,不要的字段先替换,末端补上0,字符串拼接到一起,最后left截取6位数

  • Y轲 Y轲(提问者) 在字符串末端补个自定义元素,split之后再把数组最后一个自定义元素去掉也可行。谢谢你的方法。
    2023-08-28 17:36 
  • 4关注人数
  • 718浏览人数
  • 最后回答于:2023-8-28 17:27
    请选择关闭问题的原因
    确定 取消
    返回顶部