Sahih Muslim
Abu Huraira reported Allah's Messenger (ﷺ) as saying: He who took an oath and then found another thing better than (this) should expiate for the oath (broken) by him and do (the better thing).
وَحَدَّثَنِي أَبُو الطَّاهِرِ، حَدَّثَنَا عَبْدُ اللَّهِ بْنُ وَهْبٍ، أَخْبَرَنِي مَالِكٌ، عَنْ سُهَيْلِ بْنِ أَبِي، صَالِحٍ عَنْ أَبِيهِ، عَنْ أَبِي هُرَيْرَةَ، أَنَّ رَسُولَ اللَّهِ صلى الله عليه وسلم قَالَ " مَنْ حَلَفَ عَلَى يَمِينٍ فَرَأَى غَيْرَهَا خَيْرًا مِنْهَا فَلْيُكَفِّرْ عَنْ يَمِينِهِ وَلْيَفْعَلْ " .
Grade: Sahih
صحيح
Reference