Ага... А как вам такое праздничное задание:
SELECT TRIM(BOTH '-' FROM PREG_REPLACE('/[\\s-]+/', '-', PREG_REPLACE('/&[\\w#]+?;|[^\\w\\s-]+/', '', LOWER(' Some buggy & stupid string - with special characters !'))));
Причем на одном сервере такой запрос работает, а на другом - выдает ошибку, что функции PREG_REPLACE в MySQL5 нет

Спасибо, Кот. Тебя тоже с праздником...