0845 really annoys me when they say it is a local rate call, there is no rate called local.
And when I end up having to listen to a long menu and press buttons knowing I am paying more that I should do I become even more angry, and if that call is to sort out a customer issue I am already wound up before I get to speek to anyone.
I do use saynoto0870 and look for international phone number as they are quite often 01 or 02 just remove the +44 and insert a 0 before the number.
A few years ago I decided to get even so anyone who uses 084 and will not give a geographic number I give them 084 number