Подсчитать количество слов определенной длины - PullRequest
0 голосов
/ 29 августа 2018

Я пытаюсь посчитать количество слов в ячейке, которые больше или равны 3 символам.

У меня есть простая "контра", которая работает

=IF(ISBLANK(D2);0;LEN(TRIM(D2))-LEN(SUBSTITUTE(D2;" ";""))+1)

или

=IF(LEN(D2)=0;0;COUNTA(SPLIT(D2;" "))

)

Я знаю, что в регулярном выражении это будет что-то простое, как это

"\w{3,}"

Но я не могу придумать решение, позволяющее считать только слова определенной длины в синтаксисе листа. Может ли кто-нибудь помочь мне с этим или, по крайней мере, направить меня в правильном направлении.

Заранее спасибо

Ответы [ 2 ]

0 голосов
/ 29 августа 2018

Что-то вроде

=SUMPRODUCT(--ARRAYFORMULA(len(SPLIT(D2," "))>=3))
0 голосов
/ 29 августа 2018

Может быть, есть более короткая формула, но это работает на листах.

=COUNTA(IFERROR(FILTER(SPLIT(D2, " "), LEN(SPLIT(D2, " "))>=3)))
...