JavaScript | Как получить первое русское слово из строки?

Есть строка:

"Холодильник сохраняет продукты в свежести"

Решение с методом exec()

Для начала создадим класс символа, который будет описывать возможную букву русского алфавита:

[А-яЁё]

Для нахождения максимально длинной последовательности из таких классов символа мы воспользуемся квантификатором «+«, который будет находить в строке сопоставления класса символа от одного до бесконечности раз.

[А-яЁё]+

Так как стандартное сопоставление строки по шаблону регулярного выражения идёт слева-направо, то нас будет интересовать самое первое возможное сопоставление. Мы будем использовать метод exec() для выполнения сопоставления:

/[А-яЁё]+/.exec("Холодильник сохраняет продукты в свежести")[0]

Получим:

"Холодильник"

Скриншот:

Получили первое русское слово из строки через метод exec - JavaScript
Получили первое русское слово из строки через метод exec — JavaScript

Решение с методом [ @@match ]

Тот же самый результат можно получить при помощи выражения:

/[А-яЁё]+/[Symbol.match]("Холодильник сохраняет продукты в свежести")[0]
"Холодильник"
Получили первое русское слово из строки через метод match - JavaScript
Получили первое русское слово из строки через метод match — JavaScript

 

Информационные ссылки

Стандарт ECMAScript — Раздел «CharacterClass» — https://tc39.es/ecma262/#prod-CharacterClass

Стандарт ECMAScript — Раздел «Quantifier» — https://tc39.es/ecma262/#prod-Quantifier

Стандарт ECMAScript — Раздел «22.2.5.2 RegExp.prototype.exec ( string )» — https://tc39.es/ecma262/#sec-regexp.prototype.exec

Поделись записью