Если вы контролируете как входную, так и выходную стороны этой БД, тогда вы должны быть в состоянии проверить, что ваши данные имеют формат UTF-8 на любой стороне, которая вам нравится, и применить ограничения по мере необходимости.Если вы имеете дело с системой, в которой вы не контролируете входную сторону, то вам придется проверить ее после того, как вы вытащите ее и, возможно, конвертировать на выбранном вами языке (Perl это звучит как).
База данных - ДЕЙСТВИТЕЛЬНО хорошее хранилище, но ее не следует активно использовать для других приложений.Я думаю, что это единственное место, где вы должны просто позволить MySQL хранить данные до тех пор, пока вам не понадобится что-то делать с ними дальше.
Если вы хотите продолжить путь, по которому вы идете, то посмотрите страницу руководства MySQL.: http://dev.mysql.com/doc/refman/5.0/en/regexp.html
Как правило, REGEX ОЧЕНЬ похож на языки (на самом деле я почти всегда могу копировать между JavaScript, PHP и Perl с незначительными изменениями для их функций переноса), так что если это работает с REGEX, то вам следуетлегко переносить его.
GL!
РЕДАКТИРОВАТЬ: посмотрите на эту статью о стеке - вы можете использовать хранимые процедуры, учитывая, что вы не можете использовать скрипты для обработки данных: Регулярные выражения в хранимых процедурах
С помощью хранимых процедур вы можете перебирать данные и выполнять большую обработку, не покидая MySQL.Во второй статье мы снова вернемся к той, которую я перечислил, поэтому я думаю, что вам нужно сначала проверить ваш REGEX и заставить его работать, а затем изучить хранимые процедуры.