Гид по технологиям

Валидация ответов в Google Forms

9 min read Google Forms Обновлено 24 Dec 2025
Валидация ответов в Google Forms
Валидация ответов в Google Forms

Логотип Google Forms (2020)

Быстрые ссылки

  • О функции Response Validation в Google Forms
  • Проверка числового значения
  • Проверка email и текстовых ответов
  • Ограничение длины ответа
  • Проверка по регулярным выражениям
  • Ограничение числа отмеченных чекбоксов
  • Пользовательский текст ошибки

О функции Response Validation в Google Forms

Если вы создаёте опрос, тест или контактную форму и хотите гарантировать, что ответы соответствуют заданным параметрам, используйте Response Validation. Это встроенная опция, позволяющая не принимать ответы, не удовлетворяющие правилам, и показывать участникам понятное сообщение об ошибке.

Коротко: Response Validation — это правило проверки конкретного поля вопроса. Поддерживается для типов вопросов: Short Answer (Краткий ответ), Paragraph (Абзац) и Checkbox (Флажки). Набор условий зависит от типа вопроса.

Как включить:

  1. Выберите тип вопроса «Short Answer», «Paragraph» или «Checkbox» в правой части поля вопроса.
  2. Нажмите на три точки внизу справа поля вопроса.
  3. Выберите “Response Validation”.

Выбор параметра «Проверка ответов» в меню вопроса

После включения появятся элементы управления внутри поля вопроса: тип проверки, условие, поле для значения и поле для пользовательского сообщения об ошибке.

Параметры проверки ответов в поле вопроса

Важно: Response Validation проверяет только ввод в текущем вопросе и не выполняет взаимных проверок между разными вопросами (например, сравнение двух чисел в разных полях). Для межполей потребуется Google Apps Script или внешняя обработка ответов.

Проверка числового ответа

Когда нужно: оценки в тестах, возраст, количество предметов, цена и т. д.

Тип вопроса: Short Answer. В первом выпадающем выберите “Number”, во втором — условие (Equal to, Not equal to, Greater than, Less than, Between и т. п.), в третьем — значение или диапазон.

Примеры условий:

  • Is number — просто проверка, что введённое значение интерпретируется как число.
  • Greater than / Less than — для пороговых проверок (например, возраст > 18).
  • Between / Not between — для диапазонов (например, баллы между 0 и 100).

Варианты проверки числового ответа в Google Forms

Совет: при проверке диапазонов заранее решите, включены ли границы (>= / <=) — Google Forms использует понятия Between/Not between; тестируйте граничные значения.

Проверка email и других текстовых ответов

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

Тип вопроса: Short Answer. В первом выпадающем выберите “Text”, во втором — условие (Contains, Does not contain, Email, URL и т. п.), в третьем — текстовый критерий.

Параметры проверки текстового ответа: содержит, адрес электронной почты, URL

Примеры:

  • Email — проверит формат адреса электронной почты, но не существование домена или почтового ящика.
  • URL — проверит, что ввод выглядит как веб-адрес.
  • Contains — полезно в тестах, когда ответ должен содержать определённое слово или фрагмент.

Важно: проверка формата email — базовая. Если нужен полный контроль (включая проверку домена), рассмотрите валидацию на стороне сервера или проверку через API.

Ограничение длины ответа

Когда нужно: номера телефонов фиксированной длины, коды, краткие комментарии.

Типы вопросов: Short Answer и Paragraph. В первом выпадающем выберите “Length”, затем Minimum или Maximum Character Count и укажите число символов.

Параметры проверки длины ответа в символах

Пример: для 10-значного номера телефона используйте Minimum = 10 и Maximum = 10 или требуйте exact length логикой тестов.

Замечание: при подсчёте символов учитываются пробелы и знаки препинания. Для строгой проверки формата телефона лучше комбинировать Length и Regular Expression.

Проверка по регулярным выражениям

Когда нужно: сложные шаблоны, коды, форматы с несколькими условиями.

Типы вопросов: Short Answer и Paragraph. В первом выпадающем выберите “Regular Expression”, во втором — условие (Contains, Doesn’t Contain, Matches, Doesn’t Match), а в третьем — сам шаблон.

Настройки проверки по регулярному выражению

Примеры в статье:

Пример: проверка наличия буквы 'f' в ответе с помощью регулярного выражения

Пример: проверка модели машины, начинающейся на 'F' и заканчивающейся на 'E'

Практические замечания по регулярным выражениям:

  • В Google Forms регулярные выражения интерпретируются без флагов; учтите регистрозависимость. Если нужна нечувствительность к регистру, используйте явные группы (например, [Ff]).
  • Шаблон “f.” означает “буква f, затем любой один символ”. Шаблон “fe” — это некорректное понимание для многих: в стандартных регулярных выражениях ““ относится к предыдущему символу (0 и более повторений), поэтому “fe” означает «нулевое или большее число букв f, затем e». Часто для «начинается на f и заканчивается на e» используют ^f.e$.
  • Если вы не уверены в синтаксисе RE, протестируйте шаблон сначала в онлайн-RE-тестере, затем вставляйте в форму.

Полезный краткий справочник по часто используемым конструкциям RE:

  • ^ и $ — начало и конец строки.
  • . — любой символ, кроме переноса строки.
    • — 0 или более повторений предыдущего символа или группы.
    • — 1 или более.
  • ? — 0 или 1.
  • [] — набор символов, например [A-Za-z0-9].
  • () — группа, | — логическое ИЛИ.

Проверка числа отмеченных чекбоксов

Тип вопроса: Checkbox. Эта валидация применяется только к чекбоксам, потому что ответ может включать несколько выборов.

В первом выпадающем выберите: “Select at least”, “Select at most” или “Select exactly”; справа укажите число.

Параметры проверки для вопросов с флажками (checkbox)

Пример: если у вас вопрос «Выберите три наиболее важных функции», выберите “Select exactly” = 3.

Пример: валидация «Выбрать ровно N» для чекбоксов

Совет: если вы хотите, чтобы пользователь мог выбрать несколько, но обязательно от 1 до 3, используйте “Select at least” = 1 и “Select at most” = 3 в сочетании (в Google Forms можно добавить только одно правило в интерфейсе, поэтому рационально отразить верхний и нижний пределы через текст подсказки и тестирование). Для строгого контроля используйте Checkbox Grid или отдельную логику в обработке ответов.

Пользовательский текст ошибки

Google Forms генерирует стандартные сообщения (например, «Must be a number»). Вы можете заменить их на понятный текст, который подскажет участнику, как исправить ввод.

Сообщение об ошибке «Должно быть числом» в Google Forms

Чтобы задать свой текст: в поле справа от параметров введите сообщение и сохраните.

Поле ввода пользовательского текста ошибки в Google Forms

Пример хорошего сообщения: «Введите десятизначный номер без пробелов и скобок, например 9123456789». Ясный текст повышает процент корректных ответов и снижает отказы.

Пример пользовательского сообщения об ошибке, отображаемого участнику

Когда встроенная валидация не подходит (ограничения и альтернативы)

Когда Response Validation может оказаться недостаточной:

  • Нужна логика, сравнивающая ответы в двух или более полях (например, сумма двух полей <= 100). Встроенной поддержки нет.
  • Требуется проверка существования email-адреса или домена — нужен внешний API или проверка по SMTP.
  • Нужна международная валидация телефонов по форматам стран — лучше применять специализированные библиотеки на сервере или использовать API проверки.
  • Необходима асинхронная или динамическая валидация во время набора — Google Forms не предоставляет live-валидацию.

Альтернативы:

  • Google Apps Script: получить ответы, выполнять дополнительную валидацию и уведомлять автора формы / блокировать некорректные записи.
  • Внедрять форму на сайт и валидировать на стороне клиента с помощью JavaScript, затем отправлять данные в Google Forms или напрямую в бекэнд.
  • Использовать специализированные сервисы форм (Typeform, JotForm) с более гибкой логикой валидации и интеграциями.

Мини-методология проектирования валидации

  1. Определите, какие поля критичны и какие проверки минимально необходимы (формат, длина, диапазон).
  2. Для каждого критичного поля пропишите правило в одной фразе (например: “Email — корректный формат; мобильный — 10 цифр; чекбоксы — ровно 3”).
  3. Выберите комбинацию встроенных правил (Number/Text/Length/Regex/Checkbox) и добавьте пользовательские сообщения.
  4. Составьте тест-кейсы (см. ниже) и проверьте граничные значения и негативные сценарии.
  5. Если правило нельзя выразить средствами Google Forms, запланируйте Apps Script или внешнюю обработку.

Чек-листы по ролям

Чек-лист владельца формы (Form owner):

  • Определил критичные поля и типы валидации.
  • Настроил пользовательские сообщения об ошибках для всех правил.
  • Проверил граничные значения и распространённые опечатки.
  • Описал в инструкции для участников допустимые форматы (если сложные).

Чек-лист тестировщика (QA):

  • Тестовые ответы проходят для валидных данных.
  • Негативные сценарии отклоняются с корректным сообщением.
  • Проверены локальные различия (например, формат дат или телефонов).
  • Проводится тест суммарной нагрузки (если ожидается много ответов).

Чек-лист участника (короткое руководство в форме):

  • Убедитесь, что вы вводите email в формате name@example.com.
  • Не используйте пробелы в полях, где требуется число или код.
  • Если система просит ровно N ответов, используйте не больше/не меньше.

Тест-кейсы и критерии приёмки

Критерии приёмки (пример для поля “Телефон”):

  • Поле принимает только цифры; символы ‘+’, ‘(‘, ‘)’ и пробелы отклоняются, если правило требует 10 цифр подряд.
  • Для валидных номеров с 10 цифрами ответ принимается и сохраняется.
  • Для номеров меньше или больше 10 цифр появляется пользовательское сообщение и ответ не принимается.

Примеры тест-кейсов:

  1. Ввод: 9123456789 → Ожидается: Принятие.
  2. Ввод: +7 912 345 6789 → Ожидается: Отклонение (при требовании ровно 10 цифр).
  3. Ввод: abcdef → Ожидается: Отклонение с сообщением «Должно быть числом» или вашим текстом.
  4. Граничный тест для диапазона 1–100: ввод 1 и 100 должны приниматься; 0 и 101 — отклоняться.

Полезный шпаргалка по регулярным выражениям (шорт-лист)

  • Проверка только цифр: ^\d+$
  • Ровно 10 цифр: ^\d{10}$
  • Email (упрощённо): ^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+.[A-Za-z]{2,}$
  • URL (упрощённо): ^https?://.+

Примечание: Google Forms ожидает шаблон в обычном синтаксисе регулярных выражений. Вставляйте экранирование как в примерах.

Примеры ошибок и способы их устранения

Ошибка: участник вводит число с запятой (7,5), а валидация требует целое число. Решение: либо измените сообщение об ошибке, пояснив формат, либо используйте Regex для целых чисел: ^\d+$.

Ошибка: шаблон регулярного выражения не работает как ожидалось (например, “fe” выдает неожиданные совпадения). Решение: проверьте смысл метасимволов и используйте тестеры RE; для «начинается на f и заканчивается на e» используйте ^f.e$.

Ошибка: нужна валидация, зависящая от других ответов (например, сумма полей не более 100). Решение: используйте Google Apps Script для пост-обработки ответов и уведомления автора формы.

Быстрая диаграмма принятия решения (какую валидацию выбрать)

flowchart TD
  A[Начало: какое поле?] --> B{Тип поля}
  B -->|Число| C[Number: Is number / > / < / Between]
  B -->|Текст / Email / URL| D[Text: Contains / Email / URL]
  B -->|Длина / код| E[Length: min / max]
  B -->|Сложный шаблон| F[Regular Expression]
  B -->|Чекбокс| G[Checkbox: Select at least / at most / exactly]
  C --> H[Добавить пользовательское сообщение и тесты]
  D --> H
  E --> H
  F --> H
  G --> H
  H --> I{Нужна межполевая логика?}
  I -->|Да| J[Использовать Apps Script или внешний бекэнд]
  I -->|Нет| K[Опубликовать и мониторить ответы]

Риски и рекомендации по безопасности и конфиденциальности

  • Не храните в открытом виде чувствительные данные (пароли, полные номера карт) в формах. Google Forms не предназначены для обработки платёжных данных.
  • Если собираете персональные данные, укажите цель сбора и срок хранения, соблюдая требования локального законодательства о защите данных.
  • При отправке данных на внешние сервисы (API для валидации) проверьте политику конфиденциальности внешнего провайдера.

Короткое резюме

Response Validation в Google Forms — быстрый способ повысить качество входящих ответов без программирования. Для простых проверок (числа, email, длина, чекбоксы, регулярные выражения) используйте встроенные правила и понятные сообщения об ошибках. Для межполей или более глубокой проверки планируйте Apps Script или внешнюю обработку.

Важно: тестируйте все граничные и негативные случаи до публикации формы.

Ключевые ресурсы для практики: встроенные поля Google Forms, онлайн-тестеры регулярных выражений, Google Apps Script для расширенной логики.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Как включить светлую тему в Discord
Руководство

Как включить светлую тему в Discord

Цитирование текста в Discord: быстро и просто
Discord

Цитирование текста в Discord: быстро и просто

Бег на Apple Watch: настройка и кастомизация
Фитнес

Бег на Apple Watch: настройка и кастомизация

Включение режима разработчика в Discord
Руководство

Включение режима разработчика в Discord

Защитите секции OneNote паролем
Безопасность

Защитите секции OneNote паролем

Утро без бесцельной прокрутки — практические приёмы
Здоровье

Утро без бесцельной прокрутки — практические приёмы