Quiero escribir un script que verifique la cantidad de caracteres (excluyendo los espacios en blanco) en una oración. Por ejemplo: "esto es una oración" tendría 15 caracteres. Si la oración contiene un salto como '.' debe contarse como una oración diferente.
He comenzado a escribir el guión, pero creo que necesito ayuda.
function(sen) { return sen.split('.').forEach(function(part) { part.match(/\s*/).result }) }Divida por un punto y use el map para extraer la propiedad de length :
function check(sen) { return sen.split('.').map(e => e.length) } console.log(check("Hello. World")) Si solo desea la longitud de la primera oración, dividida por un punto, obtenga el primer elemento y devuelva su propiedad length :
function check(sen) { return sen.split('.')[0].length; } console.log(check("Hello. World")) const str = 'this is first sentence. this is second sentence'; let sentence = str.split('.'); let result = {}; sentence.forEach((value, index) => { result[index + 1] = value.length; }); console.log(result);La salida contendrá caracteres de longitud con respecto al número de oración.
(Descuento de emojis) Use un reemplazo de expresiones regulares en los espacios en blanco para borrarlos primero.
sen.replace(/\s*/g, '')y luego dividir la oración y contar el número de caracteres
function sentenceCounter(sen) { return sen.replace(/\s*/g, '').split('.').map(e => e.length) }Eso es todo lo que debería necesitar realmente, esto debería devolver una lista de números correspondientes a la longitud de sus oraciones