Вопрос
Вот пример JavaScript кода, который извлекает вопросы из текста с помощью регулярных выражений и выводит случайный вопрос:

```javascript
// Текст с вопросами (можно загружать из внешнего источника)
const questionText = `
Как называется столица России? 
Что такое фотосинтез? 
Почему небо голубое? 
Сколько планет в Солнечной системе? 
Как работает JavaScript?
`;

// Используем регулярное выражение для извлечения вопросов
const questions = questionText
  .split('\n') // Разбиваем на строки
  .map(line => line.trim()) // Убираем пробелы
  .filter(line => {
    // Фильтруем строки с вопросами (содержат знак вопроса)
    const isQuestion = /.*\?$/.test(line);
    // Дополнительная проверка: вопрос должен содержать хотя бы 3 слова
    return isQuestion && line.split(/\s+/).length >= 3;
  });

// Выбираем и выводим случайный вопрос
if (questions.length > 0) {
  const randomIndex = Math.floor(Math.random() * questions.length);
  console.log('Случайный вопрос:', questions[randomIndex]);
} else {
  console.log('Вопросы не найдены!');
}
```

Этот код:
1. Разбивает текст на строки
2. Использует регулярные выражения для:
   - Проверки наличия вопросительного знака в конце (`.*\?$`)
   - Подсчета слов через разделение пробелами (`/\s+/`)
3. Фильтрует пустые строки и некорректные вопросы
4. Выводит случайный вопрос из отфильтрованного списка

Пример использования регулярных выражений:
- `.*\?$` - проверка, что строка заканчивается на вопросительный знак
- `/\s+/` - разделение строки на слова по пробелам

Вы можете модифицировать регулярные выражения для:
- Поиска вопросов с определенными ключевыми словами
- Проверки формата вопроса
- Фильтрации по сложности или тематике

Например, для поиска вопросов о природе:
```javascript
const natureQuestions = questions.filter(q => 
  /(природ|погод|небо|земл)/i.test(q)
);
```
Категория: подраздел | Добавил: Lom (13.02.2025)
Просмотров: 7
Всего комментариев: 0
avatar
app.get('/reposts', async (req, res) => { const reposts = await Repost.find(); res.render('reposts', { reposts }); });>