Today we will take a look at the modal verbs “could have”, “would have” and “should have”. These past modal verbs are useful for expressing your present feelings about a past decision (or another action).
1. Could have
“Could have” means that something was possible in the past, but it did not happen.
I could have gone directly to college, but I decided to travel for a year.
You can say “I couldn’t have said it better myself” when you like the way somebody said something. It is a way to show strong agreement.
“Could not have” means that something was impossible in the past.
She could not have been on that flight because I just saw her at work.
2. Would have
We can use the structure “I would have A, but I had to B” to show that you wanted to do something in the past, but you could not.
I would have called, but there was no phone service.
“Would have” also forms the result clause of a past unreal conditional. For example:
If I had known they were vegetarians, I would have made a salad.
3. Should have
“Should have” means that something did not happen, but we wish it had happened.
I’m sorry that I’m late for work. I should have woken up earlier.
You can use “should have + by now” to refer to something that should be happening now, but it has not happened.
The plane should have arrived by now.