@n0namer

.NET + Sphinx. Как не экранировать # и @?

Использую MySqlCommand для подключения. Формирую текст запроса к Сфинксу по такому шаблону:
"select Id, WEIGHT() as weight from ind WHERE MATCH ('"+ searchString + "')"

Пользователь может ввести символы # и @ и вылетит эксепшн. Чтобь этого избежать экранирую эти символы:
searchString.Replace("@","\\\\@").Replace("#", "а")

Есть ли более универсальное решение?
Какие еще символы нужно экранировать?
  • Вопрос задан
  • 186 просмотров
Пригласить эксперта
Ответы на вопрос 2
dimonchik2013
@dimonchik2013
non progredi est regredi
правильное решение - регекспом пропускать только разрешенные символы
заодно и в нижний регистр можете перевести
Ответ написан
opium
@opium
Просто люблю качественно работать
все спецсимволы надо экранировать, для этого есть готовые функции во всех языках
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы