Sahih Muslim Book 15, Hadith Number 4060.

Chapter : It is excellent to break the vow if one finds it better doing that which is against this vow one should expiate it.

Tamim b. Tarafa reported that he beard ‘Adi b. Hatim say that a person came to him and asked for one hundred dirhams. He (‘Adi) said: You asked Me for one hundred dirhams and I am the son of Hatim; by Allah, I will not give you. But then he said: (I would have done that) if I had not heard Allah’s Messenger (may peace be upon him) say: He who takes an oath, but then finds something better than that, should do that which is better.