The Sri Lankan rupee weakened to a three-year low on Thursday, underperforming all Asian peers, as a gain in oil prices weighed on the currency.