We mostly filtered out porn by using a two word phrase method. There were a lot of edge cases because many potentially dirty concepts are made up of words that are not bad when used alone. For example a text can have both "girls" and "nude" in it without being vulgar, but if it has the phrase "nude girls" the chance for it being pornografic is much higher.
I've also searched for less generic things like "xperia z5" and the results looked good.
I'm gonna further improve this over the next days. Right now it's just a quick'n dirty hack. :)
https://deusu.de/blog/2015-12-03-alle_jahre_wieder_wonach_de...
Warning! This is definitely NSFW! :)
So if you filter out all the adult stuff you might make those users unhappy. Perhaps make it configurable?
Eg. add a checkbox for NSFW results or something better.