I have a script that creates a list of items with a structure like this:
Some stuff
$('li').not('div,a').text('')
Try this, untested
Edit
$('li').contents().filter(function(){ return !(this.tagName == 'DIV' || this.tagName == 'A');}).remove();