How do i capitalize the first letter of each sentance in Javascript?

84 Views Asked by At

How do i capitalize the first letter of each sentance in Javascript?

(I am creating a tool that would convert first letter of each sentance to upparcase(Sentance Case) on click in reactjs)

I want output like this,

How do i capitalize the first letter of each sentance in Javascript? How do i capitalize the first letter of each sentance in Javascript? How do i capitalize the first letter of each sentance in Javascript? How do i capitalize the first letter of each sentance in Javascript?

I am trying this but looks wrong,

let newText = text.charAt(0).toUpperCase() + text.slice(1).toLowerCase();

let result = newText.map((val) => val);

setText(result);
2

There are 2 best solutions below

0
nishant movaliya On BEST ANSWER
const text = 'lorem ipsum dolor sit amet consectetur adipisicing elit. "voluptas, debitis?" unde, delectus pariatur, velit vero "dolorem repellendus" veritatis. quia odio... aperiam (nemo) sint natus 0.1 hic ad nisi id magni praesentium.';

const result = text.replace(/(?<=(?:^|[.?!])\W*)[a-z]/g, i => i.toUpperCase());

console.log(result);
1
Shachar297 On
function capitalizeSentences(text) {
  return text.replace(/(^\w|\.\s*\w)/g, function(match) {
    return match.toUpperCase();
  });
}
var text = "this is how you would captilize this sentence. this is another sentence"
var capitalizedText = capitalizeSentences(text);

console.log(capitalizedText)

// >>> This is how you would captilize this sentence. This is another sentence

The replace method is used with a regular expression pattern to match the first word character after the start of the string (^\w) or after a period followed by zero or more whitespace characters (.\s*\w).