Замените специальные символы, такие как Ôûîâ

Сегодня я столкнулся с действительно странной проблемой. Я создаю приложение с Laravel в базе данных Firebird, поэтому очень важно не вставлять в запрос недопустимые строки или символы. Вчера я получил сообщение об ошибке такого рода исключений, поэтому я проверил код, в чем может быть проблема. Прямо сейчас я создал правило проверки со следующим регулярным выражением:

regex:/[a-zA-Z0-9\.\-\,üÜóÓöőŐúÚűŰáÁiÍûé]+/

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

Ôûîâ

Это бросит исключение выше. Для текстового редактора, который я использую TextAnguar, есть ли способ предотвратить сохранение или замену вводимых данных стандартными символами? (Как üöőú, венгерские буквы)

Спасибо за ответ!

С наилучшими пожеланиями, Габор Мадьяр

1 ответ

Решение

Вы можете добавить эти символы в класс персонажа

regex:/[-a-zA-Z0-9.,üÜóÓöőŐúÚűŰáÁiÍûéÔûîâ]+/
                                     ^^^^

Обратите внимание, что - в начале (или конце) класса символов не требуется экранировать, чтобы обозначить буквальный дефис. , а также . не нужно избегать внутри класса персонажа.

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