JavaScript — это универсальный язык программирования, позволяющий разработчикам создавать динамические и интерактивные веб-приложения. В этой статье мы рассмотрим различные методы определения того, содержит ли слово символы с ударением или без него, с помощью JavaScript. Итак, хватайте свой любимый напиток и давайте окунемся в мир распознавания персонажей!
Метод 1: регулярные выражения
Регулярные выражения JavaScript предоставляют мощный способ сопоставления шаблонов внутри строк. Чтобы проверить наличие акцентированных символов, мы можем использовать диапазон символов Юникода. Вот пример:
function hasAccents(word) {
const regex = /[\u0300-\u036f]/g;
return regex.test(word);
}
console.log(hasAccents("cliché")); // true
console.log(hasAccents("hello")); // false
Метод 2: String.normalize()
Метод normalize()
используется для нормализации строк Юникода. Преобразовав слово в его нормализованную форму, мы можем затем сравнить его с исходным словом, чтобы обнаружить любые изменения, вызванные нормализацией акцента. Взгляните:
function hasAccents(word) {
const normalized = word.normalize("NFD");
return normalized !== word;
}
console.log(hasAccents("résumé")); // true
console.log(hasAccents("resume")); // false
Метод 3: сравнение кодов символов
Каждому символу в JavaScript соответствует соответствующее значение в Юникоде. Символы с акцентом обычно имеют более высокие значения в Юникоде, чем их аналоги без акцента. Мы можем использовать этот факт для обнаружения акцентов. Вот пример:
function hasAccents(word) {
for (let i = 0; i < word.length; i++) {
if (word.charCodeAt(i) > 127) {
return true;
}
}
return false;
}
console.log(hasAccents("voilà")); // true
console.log(hasAccents("hello")); // false
В этой статье мы рассмотрели три различных метода обнаружения слов с ударением или без ударения в JavaScript. Используя регулярные выражения, нормализацию строк или сравнение кодов символов, вы можете включить эти методы в свои проекты, чтобы более эффективно обрабатывать символы с диакритическими знаками. Не забудьте выбрать метод, который лучше всего соответствует вашим конкретным требованиям.