Как получить объект из массива, состоящего всего из 1 слова и не содержащего специальных символов?

Как получить список из одного слова из wordnet без специальных символов? Я пытаюсь сделать это так:

const wordnet = require('wordnet')
await wordnet.init();

  let results = await wordnet.list();

    const words = results.filter(m=> m.includes("raine"))

//array = ["capital of the ukraine", "rainer maria rilke", "cross of lorraine", "straight-grained", "quiche lorraine", "coarse-grained", "featherbrained", "pebble-grained", "scatterbrained",  "toilet-trained", "unrestrainedly", "animal trainer", "lorraine cross", "trained worker", "close-grained", "cross-grained"]

message.channel.send(`${words}`)
//expected output: ["featherbrained", "scatterbrained", "unrestrainedly"]

Я знаю, что это можно сделать с помощью RegExp, но я не знаю, как это сделать. Мне нужна помощь.

здесь имеются в виду спецсимволы?

cmgchess 03.04.2023 13:43

значит, !@$%^-и т.д. В массиве есть слова с -. Я хотел получить все 1 слово, исключая слова с -.

Hypo 03.04.2023 13:45
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
2
2
55
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вы можете сначала проверить символы алфавита.

const
    array = ["capital of the ukraine", "rainer maria rilke", "cross of lorraine", "straight-grained", "quiche lorraine", "coarse-grained", "featherbrained", "pebble-grained", "scatterbrained", "toilet-trained", "unrestrainedly", "animal trainer", "lorraine cross", "trained worker", "close-grained", "cross-grained"],
    words = array.filter(m => /^[a-z]+$/i.test(m) && m.includes("raine"));

console.info(words);

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

const
    array = ["capital of the ukraine", "rainer maria rilke", "cross of lorraine", "straight-grained", "quiche lorraine", "coarse-grained", "featherbrained", "pebble-grained", "scatterbrained", "toilet-trained", "unrestrainedly", "animal trainer", "lorraine cross", "trained worker", "close-grained", "cross-grained"],
    word = 'raine',
    wordR = new RegExp(`^[a-z]*${word}[a-z]*$`, 'i'),
    words = array.filter(RegExp.prototype.test, wordR);

console.info(words);

Обратите внимание, что foo_raine_123 также будет соответствовать, так как \w совпадает с [a-zA-Z0-9_].

InSync 03.04.2023 14:02

теперь разрешены только персонажи.

Nina Scholz 03.04.2023 14:04

Другие вопросы по теме