As fórmulas do Notion podem contar texto de duas formas: caracteres e palavras. A função length() retorna o número de caracteres em uma string, incluindo espaços e pontuação. Muitos usuários assumem que ela conta palavras, o que leva a resultados incorretos em bancos de dados, rastreadores de tarefas ou resumos de conteúdo. Este artigo explica a diferença entre contagem de caracteres e contagem de palavras em fórmulas do Notion, mostra como construir uma fórmula de contagem de palavras do zero e aborda armadilhas comuns ao medir o comprimento do texto.
Principais Conclusões: Contagem de Caracteres vs Contagem de Palavras em Fórmulas do Notion
length(prop("Texto")): Retorna o número total de caracteres, incluindo espaços e pontuação. Não é uma contagem de palavras.- Fórmula de contagem de palavras usando
replaceAll()elength(): Conta palavras removendo espaços extras e medindo os segmentos restantes. prop("Texto").length(): Sintaxe alternativa que produz a mesma contagem de caracteres que a funçãolength()padrão.
Como a Função length() do Notion Conta Caracteres
A função length() em fórmulas do Notion retorna o número de caracteres em uma string. Um caractere é qualquer unidade individual de texto: letras, dígitos, espaços, sinais de pontuação e símbolos especiais. Por exemplo, a string “Olá Mundo” contém 10 caracteres, pois o espaço entre as duas palavras conta como um caractere. O Notion não fornece uma função nativa de contagem de palavras. Toda fórmula que conta palavras deve ser construída manualmente usando funções de manipulação de string como replaceAll(), slice() e chamadas aninhadas de length().
A contagem de caracteres inclui espaços iniciais e finais, se existirem. Uma string como ” maçã ” (com um espaço inicial e um espaço final) retorna 7 caracteres, não 5. Esse comportamento frequentemente surpreende usuários que esperam que length() retorne apenas caracteres visíveis. O Notion também conta caracteres de nova linha como um caractere cada. Se você copiar texto de uma fonte com várias linhas, as quebras de linha aumentam a contagem de caracteres.
Quando a Contagem de Caracteres é a Ferramenta Certa
A contagem de caracteres é útil para regras de validação, como limitar uma propriedade a um número máximo de caracteres para uma biografia estilo Twitter ou uma descrição curta. Também é usada em fórmulas que calculam tempo de leitura ou estimam tamanho de armazenamento. Se seu objetivo é impor um limite estrito de caracteres, length() é a função correta.
Quando a Contagem de Caracteres Falha
A contagem de caracteres falha quando você precisa contar palavras. Um banco de dados que rastreia o número de palavras em uma nota de reunião, um rascunho de post de blog ou uma entrada de feedback de cliente não pode usar length() sozinho. A contagem de caracteres para um parágrafo de 100 palavras varia dependendo do comprimento das palavras, portanto não representa a contagem de palavras.
Construindo uma Fórmula de Contagem de Palavras no Notion
Para contar palavras, você deve remover todos os espaços extras e então contar os segmentos restantes separados por espaços. A abordagem padrão usa replaceAll() para colapsar múltiplos espaços em um único espaço, remover espaços iniciais e finais, e então contar os espaços mais um. A fórmula abaixo assume que seu texto está em uma propriedade chamada Texto.
- Crie uma propriedade de fórmula
Adicione uma nova propriedade ao seu banco de dados. Defina o tipo como Fórmula. Nomeie-a como Contagem de Palavras ou similar. - Insira a fórmula de contagem de palavras
Cole a seguinte fórmula no editor de fórmulas:length(replaceAll(trim(prop("Texto")), " +", " ")) - length(replaceAll(trim(prop("Texto")), "[^ ]", "")) + 1
Esta fórmula funciona contando o número de espaços no texto limpo e adicionando um para obter a contagem de palavras. - Teste a fórmula
Insira uma frase curta na propriedade Texto, como “As fórmulas do Notion são poderosas.” A fórmula deve retornar 5. Se a propriedade estiver vazia, a fórmula retornará 1 porque a fórmula de contagem de espaços ainda adiciona um. Para lidar com propriedades vazias, envolva toda a fórmula em uma instruçãoif():if(empty(prop("Texto")), 0, length(replaceAll(trim(prop("Texto")), " +", " ")) - length(replaceAll(trim(prop("Texto")), "[^ ]", "")) + 1) - Verifique com casos extremos
Teste com uma única palavra (retorna 1), com múltiplos espaços entre palavras (retorna contagem correta) e com espaços iniciais/finais (retorna contagem correta após limpeza).
Fórmula Alternativa de Contagem de Palavras Usando slice() e test()
Alguns usuários preferem uma fórmula que conta palavras iterando sobre cada caractere. Essa abordagem é mais complexa e menos eficiente. O método de contagem de espaços acima é o mais confiável e amplamente usado na comunidade do Notion.
Erros Comuns ao Contar Caracteres e Palavras
Fórmula de Contagem de Palavras Retorna 1 para Propriedades Vazias
A fórmula base sem o wrapper if() retorna 1 quando a propriedade de texto está vazia porque conta zero espaços e adiciona um. Sempre envolva a fórmula com if(empty(prop("Texto")), 0, ...) para retornar 0 para células vazias.
Contagem de Caracteres Inclui Espaços em Lugares Inesperados
Usuários frequentemente colam texto de páginas web ou documentos que contêm espaços inseparáveis ou caracteres de tabulação. O Notion trata esses como caracteres normais. Se sua contagem de caracteres parecer errada, verifique se há caracteres invisíveis. Use replaceAll(prop("Texto"), "[^a-zA-Z0-9]", "") para contar apenas letras e dígitos se você precisar de uma contagem alfanumérica.
Fórmula de Contagem de Palavras Falha com Pontuação Anexada às Palavras
A fórmula acima conta palavras separadas por espaços. Se uma palavra for seguida por um ponto sem espaço (como “poderosas.”), o ponto faz parte do segmento da palavra. A contagem de palavras permanece correta porque o ponto não cria um espaço extra. No entanto, se você precisar contar apenas palavras alfabéticas, deve primeiro remover a pontuação com uma etapa adicional de replaceAll().
Usando prop("Texto").length() em vez de length(prop("Texto"))
O Notion suporta notação de ponto para algumas funções. Tanto prop("Texto").length() quanto length(prop("Texto")) retornam a mesma contagem de caracteres. A notação de ponto é mais curta, mas pode ser menos legível para fórmulas complexas. Escolha um estilo e use-o consistentemente.
Contagem de Caracteres vs Contagem de Palavras: Comportamento das Fórmulas Comparado
| Item | Contagem de Caracteres (length()) |
Contagem de Palavras (fórmula personalizada) |
|---|---|---|
| Conta espaços | Sim | Não (espaços são separadores, não palavras) |
| Conta pontuação | Sim | Sim (anexada às palavras) |
| Conta novas linhas | Sim | Não (novas linhas são ignoradas a menos que substituídas por espaços) |
| Propriedade vazia retorna | 0 | 0 (com wrapper if()) |
| Palavra única retorna | Comprimento da palavra | 1 |
| Múltiplos espaços entre palavras | Conta cada espaço | Contagem correta de palavras após limpeza |
A função length() do Notion é um contador de caracteres, não um contador de palavras. Para contar palavras em um banco de dados do Notion, você deve construir uma fórmula usando replaceAll(), trim() e length(). O método de contagem de espaços é o mais eficiente e confiável. Sempre trate propriedades vazias com uma instrução if() para evitar retornar 1 em vez de 0. Para casos de uso avançados, como contar apenas palavras alfabéticas ou excluir pontuação, adicione etapas extras de replaceAll() antes do cálculo da contagem de palavras. Teste sua fórmula com casos extremos, incluindo células vazias, palavras únicas e texto com espaçamento irregular para garantir precisão.