The bus arrived two minutes after you left, so you needn't have taken/didn´t need to take a cab.
needn´t have taken
I didn´t have to/didn´t need to pay for dinner because it was my birthday and my friends had invited me!
didn´t have to and didn´t need to
They should have/shouldn´t have arrived back home by now. They left over an hour ago.
should have
The local government didn´t need to build/shouldn´t have built a new shopping centre there - it was a site of historical importance.
shouldn´t have built
John shouldn´t have spent/didn´t need to spend all of his money on shoes - now he can´t afford to go out.
shouldn´t have spent
Well, that was a waste of money - I needn´t have bothered/didn´t have to bother buying that new computer as my old one is working completely fine now.
needn´t have bothered
I shouldn´t have looked/didn´t have to look far to find the book I was looking for - they had it in the shop around the corner.
didn´t have to look
Mary didn´t join us at the shopping centre because she needn´t have bought/didn´t need to buy a present for the party - she already bought something online.
didn´t need to buy
Your experience on this site will be improved by allowing cookies.