Intereting Posts
Каков наилучший способ / практика получения расширения загруженного файла в PHP Каков наилучший способ уменьшить количество запросов, когда у класса DAO есть методы, которые используют один и тот же результат? MySQL «Fire-And-Forget» рекомендуется использовать INSERT / UPDATE / DELETE – mysql_unbuffered_query? Как запретить пользователю загружать или сохранять изображение? Laravel orderBy whereHas Как изменить URL-адрес в codelginter добавление параметров URL в форму PHP HTML Чтение foxpro DB с использованием php / Java Может ли GD сделать текст искаженным (чтобы он выглядел так, будто он слегка обтекает кривую)? Как отправить письмо с контентом из представления в codeigniter Запустить php-скрипт, хранящийся на сервере? Google App Engine getImageServingUrl с именем файла загрузки Как вставить элемент в массивы в определенном месте? передача идентификатора сеанса через URL-адрес Что означают операторы «= &» и «& =» в PHP?

используя mysql regex_replace с регулярным выражением

Я использую функцию regex_replace, найденную здесь http://techras.wordpress.com/2011/06/02/regex-replace-for-mysql/

Эта функция хорошо работает в php, но, похоже, не нравится хэш. Я использую этот шаблон

#^(0*)|([^\da-z])#i 

в регулярном выражении, найденном здесь. Как удалить все неалфавитные числовые символы и ведущие нули

Как я могу сделать эту работу в mysql либо меняющим функцию mysql, либо настройкой выражения

Как это:

 SELECT regex_replace('^0+|[^0-9a-zA-Z]','',sometextfield) 

объяснение

  • Функция regex_replace вы пытаетесь использовать, предназначена для MySQL и не использует разделители, такие как PHP, поэтому мы можем удалить #
  • Мы также можем удалить круглые скобки, которые не имеют никакой цели
  • 0* следует изменить на 0+ , иначе мы заменим пустую строку

Что делает регулярное выражение?

  • Якорь ^ утверждает, что мы находимся в начале строки
  • 0+ соответствует одному или нескольким нулям
  • ИЛИ |
  • [^0-9a-zA-Z] соответствуют символу, который не является ни цифрой, ни буквой