Cóż...
Select position('#' in '2010-####-3434');
da ci pierwszy. Jeśli chcesz ostatni, po prostu uruchom to ponownie z odwrotną stroną swojego łańcucha. Rewers ciągu pl/pgsql można znaleźć tutaj .
Select length('2010-####-3434') - position('#' in reverse_string('2010-####-3434')) + 1;