Tomato paste, sauce or ketchup is great to remove unwanted hair dye out of hair. This worked for me when I dyed my golden blonde hair a ash blonde and it ended up looking grey. I just smeared tomato paste all through my hair after washing it, left it on for 20mins, rinsed and conditioned. Okay, so this is a little weird, and you'll feel like an idiot having tomato paste in your hair, but it works and it doesn't damage the hair like hair strippers. It's also very cheap. After the first treatment most of the bad colour was gone, after the second treatment all was gone.
I have heard two theories on why this works, one is that it's acidic and it strips the colour from the hair, the other is the it counteracts the oxidization process of the dye. I don't know which or if both are true, but it saved me so I was very happy!
It won't re-dye your hair from the permanent lightening aspect of hair dyes, so you may need to still re-dye over it with a tint or toner, but it will remove unwanted added tones, in my experience. Eg. if you had brown hair, and dyed it and it had too much of a burgandy colour, the tomato paste would remove the burgandy, but if the dye you used also lightened your hair, it would end up being a lighter brown or orange colour, so you may need to add another colour after removing the first colour. Hope that explanation makes sense.
I guess it would better if we never made home colouring mistakes, but for those occasions when a quick fix is needed, I would say this it worth a try. I would love to hear what other people think about this.