Для этого вы можете использовать регулярное выражение вместе с replace
в вашем канале.
Во-первых, используйте
str = str.replace(/[^\w\s]/gi, "")
Это удалит все не-буквенные символы
Затем вы можете использовать
str = str.replace(/\b\w/g, (str) => str.toUpperCase())
Это заменит любой буквенный символ, который находится рядом с границей слова (например, пробел), заглавной версией.
Вы можетезатем соедините все вместе, вот так:
let str = "@!₪ test stri&!ng₪";
str = str.replace(/[^\w\s]/gi, "") // Remove non word characters
.trim() // Remove trailing and leadings spaces
.replace(/\b\w/g, (s) => s.toUpperCase()) // Make the first letter of each word upper case
console.log(str);