一个简单的查询。
我使用了一个非常有用的公式:
=JOIN(replace(A1, find("|", SUBSTITUTE(A1, ", ", "|", 5)), len(A1), ""), "", )
...这需要一个逗号分隔的单元格(可能包含x50个字符串),并且仅返回5,接下来,我想将返回的字符串限制为少于20个字符。是否可以在此公式中加入一些魔术。我目前使用正则表达式“查找并替换”,其值为:。{20,},然后删除超过20个字符的所有内容。一定有更漂亮的方法可以做到这一点?
即。单元格A1 =
here's a string, here's a very long string over 20 chars, string 3, string 4, another string, string 5, another string 7, number 8
将成为
here's a string, string 3, string 4, another string, string 5
此外,在公式中...您如何处理错误?如果我查询的单元格仅包含3个字符串,而我要求5个字符串,则得到一个错误或错误的回报,处理这种事件的诀窍是什么?
非常感谢您阅读本文!
答案 0 :(得分:1)
=JOIN(", ",ARRAY_CONSTRAIN(FILTER(SPLIT(A1,", ",0),LEN(SPLIT(A1,", ",0))<=20),1,5))