тестер regexp для запросов mysql

  • Автор темы Автор темы prostors
  • Дата начала Дата начала

prostors

Client
Регистрация
16.12.2020
Сообщения
1 456
Реакции
79
Баллы
48
Добавьте тестер regexp для запросов mysql

синтаксис отличается от того тестера, что есть сейчас
 
А что это такое ? тестирование регулярок на запросах SQL ? или именно запросы mysql ? а мне для SQLite надо... только я не знаю где там регулярки используются....
Ну в общем очень интересно, но ничего не понятно.
 
если прописать в запросе ^7 то работает
если прописать ^\d+ пустой ответ, хотя тестер f3 показывает, что всё правильно
 
если прописать в запросе ^7 то работает
если прописать ^\d+ пустой ответ, хотя тестер f3 показывает, что всё правильно
В коде C# экранируйте все знаки "\" знаком "\"
То есть, всесто "^\d" получится "^\\d"
пример кода:
C#:
Развернуть Свернуть Копировать
string input = "7912";
Regex regex = new Regex("^\\d");
string result = regex.Match(input).ToString();
project.SendInfoToLog(result);
 
  • Спасибо
Реакции: prostors
я про действия спрашивал, там тоже экранировать?
upd. пробовал экранировать - пустой ответ
 
Я так понимаю, дело в том, что регулярные выражения, в которых есть управляющая последовательность "\d" неправильно отрабатывают в mysql.
Вот человек описал этот баг:


Решение:
Используйте следующую регулярку:
SQL:
Развернуть Свернуть Копировать
^[0-9]

Или используйте регулярку с POSIX-последовательностью:
SQL:
Развернуть Свернуть Копировать
^[[:digit:]]
 
Последнее редактирование:
  • Спасибо
Реакции: djaga
Регулярные выражения отличаются в зависимости от языков. Причем есть парадоксальные случаи когда один язык использует различные диалекты или версии. При переходе с другого языка или использовании регулярок очень помогла книга в аттаче. В ней рассматриваются задачи по конструированию запросов сразу на восьми языках ( C#, Java, JavaScript, PHP, Perl, Python, Ruby и VB.NET)
PS Такие книги должны быть настольными поэтому заказал бумажный вариант с Амазона :)
 

Вложения

Кто просматривает тему: (Всего: 0, Пользователи: 0, Гости: 0)