It sounds like you've been using the right sorts of methods for that
job, but the complexity of the query is getting to be too much :)
There's a 'regex' lookup...
http://docs.djangoproject.com/en/dev/ref/models/querysets/#regex
That's a pretty intense example text parsing search. I think the
usual Django philosophy might conclude that whatever you've got in
that field could be broken up into multiple fields? :) Unless it's a
TextField, but then you might be best off with regex anyway.
I can't quite wrap my brain around the requirement for such a lookup
yet, because I've never yet come across the need for any raw SQL to go
into my queries. Apologies if this doesn't really address the type of
solution you need.
Tim