Пробел после точки или запятой в регуляярном выражении
Есть гугл форма с проверкой текста в ответе с помощью регулярно выражения. Сейчас оно проверяет, чтобы в ответе использовался только английский язык и цифры, пробелы, двоеточия, тире, двойные кавычки, точки, запятые, восклицательный и вопросительные знаки и скобки. Кроме этого заставляет начинать ответ с заглавной буквы или цифры, а заканчивать точкой или знаками '!?'. А как сделать так, чтобы точка или запятая в тексте использовались только с пробелом после них?
^[A-Z0-9][0-9a-zA-Z\s:\-".,!?()]*[\.!?]$
Ответы (1 шт):
Автор решения: Wiktor Stribiżew
→ Ссылка
Используйте
^[A-Z0-9]([0-9a-zA-Z\s:"!?()-]|[.,]\s)*[.!?]$
Подробности
^- начало строки[A-Z0-9]- буква или цифра из набора символов ASCII(- начало захватывающей подмаски:[0-9a-zA-Z\s:"!?()-]- буква или цифра из набора символов ASCII, пробельный символ или один из символов:"!?()-|- или[.,]\s- точка или запятая, после которых следует один пробельный символ
)*- конец подмаски, ноль или более повторов[.!?]-.,!или?$- конец строки.