Olá, eu não o por que, mas o meu código ainda esta contando os espaços como caracteres, eu li a documentação de expressões regulares e ta certinho igual o meu, segue:
var frase = $(".frase").text()
var numPalavras = frase.split(" ").length;
var tamanhoFrase = $("#tamanho-frase");
tamanhoFrase.text(numPalavras) // contador de palavras do texto aleatorio
var campo = $(".campo-digitacao");
campo.on("input", function(){
var conteudo = campo.val();
var qtnPalavras = conteudo.split(/\S+/).length -1;
$("#contador-palavras").text(qtnPalavras);
var qtnCaracteres = conteudo.length;
$("#contador-caracteres").text(qtnCaracteres);
})