Yellow Tangs (Zebrasoma flavescens) are often effective grazers of many hair alga. Mine regularly eats derbesia. The fish that has been best in my experience is the Foxface Rabbitfish (Siganus vulpinus). Both of these fish can become relatively large and require a tank of at least 75 gallons, IMO. If no live algae is available for them to graze, you must supplement their diet with dried seaweed.
My emerald crabs have always eaten whatever algae they find in the tanks, but they are equally likely to scavenge for other foods if the pickings are easier, so they are rather hit-and-miss. Hermit crabs, in my experience, are useless, and most of the snails in the trade would much prefer to eat microalgae off the glass.
Sea hares (dolabella) are voracious algae eaters, but have their own issues, and generally pass some viable, live algae through their digestive systems. They will definitely munch hair algae down, though, like little lawnmowers... their life spans are also rather short (about 1 year). Urchins are also somewhat hit-and-miss. Some ('pincushion') urchins I've had defintely prefer to eat filamentous alga, while others seem only interested in calcareous (coralline) algae.
I'd research some of those options, and others will no doubt have other suggestions.
It's a very common topic, so I'd also recommend searching the board for relevant threads.