B2 · 中上級 TOEIC 605–780 IELTS 5.5–6.5 法助動詞(モーダル)

Should Have / Could Have / Would Have の使い方

Should Have、Could Have、Would Have を学んで、英語で後悔や逃した機会を表現しよう。第3条件文に欠かせない表現です。

シェア: コピーしました!

should have / could have / would have とは?意味と基本構造

英語で過去のことを振り返って「〜すべきだった」「〜できたのに」「〜しただろうに」と言いたいとき、日本人学習者は過去形を使えばよいと考えがちですが、これは大きな誤解です。英語では、過去に対する「後悔」「非難」「実現しなかった可能性」を表すために、助動詞の過去形+ have+過去分詞という特別な形(これを「モーダルパーフェクト(modal perfect)」または「仮定法過去完了に準じる形」と呼びます)を使います。

この形は日本語の文法にはない発想です。日本語では「すべきだった」と一言で終わりますが、英語では「should」という助動詞に「have + 過去分詞」という現在完了形のパーツを組み合わせることで、「今から見て、過去のある時点でどうだったか」という時間的な視点のズレを表現します。これが should have / could have / would have の核心です。

  • should have + 過去分詞:過去にすべきだったのに、しなかった(後悔・非難)
  • could have + 過去分詞:過去にできたはずなのに、しなかった(可能性・機会の逸失)
  • would have + 過去分詞:(もし〜だったら)過去にこうしただろう(仮定法過去完了の帰結節)

この3つは形が似ているため混同しやすいですが、意味の役割はまったく異なります。この記事では、形の作り方から意味の違い、日本人が特に間違えやすいポイントまで、体系的に解説します。

形(公式):should have / could have / would have の基本パターン

まず、肯定文・否定文・疑問文の基本形を表で確認しましょう。いずれも「助動詞+have+過去分詞(p.p.)」という語順が絶対的なルールです。

文の種類 公式 例文
肯定文 主語 + should/could/would + have + 過去分詞 I should have called you.
否定文 主語 + should/could/would + not + have + 過去分詞 I shouldn't have called you.
疑問文 Should/Could/Would + 主語 + have + 過去分詞? Should I have called you?

発音の注意点(学習のポイント)
話し言葉では should have / could have / would have は「シュド(ゥ)・ハヴ」ではなく、should've, could've, would've(発音は「シュダヴ」「クダヴ」「ウダヴ」に近い)と縮約されます。ここで日本人学習者が非常によく犯す間違いが、リスニング時にこの音を "should of", "could of", "would of" と聞き取ってしまい、実際に "I should of gone." のように書いてしまうことです。"of" は前置詞であり、助動詞の後ろに置くことは文法的にあり得ません。必ず have であることを意識してください。

完全形 縮約形(話し言葉) ネイティブの発音イメージ
should have should've シュダヴ
could have could've クダヴ
would have would've ウダヴ
should not have shouldn't have シュドゥントゥ・ハヴ

should have + 過去分詞の使い方:後悔・非難を表す

1. 自分の過去の行動を後悔するとき

過去にすべきだったのにしなかったことに対する後悔を表します。日本語の「〜すればよかった」に近い感覚です。

  • I should have studied harder for the exam.(もっと一生懸命試験勉強をすればよかった。)
  • We should have left earlier; now we're stuck in traffic.(もっと早く出発すればよかった。今、渋滞にはまっている。)

2. 他人の過去の行動を非難・批判するとき

相手が過去にすべきだったのにしなかったことを指摘・非難するニュアンスです。

  • You should have told me about the meeting sooner.(もっと早く会議のことを教えてくれればよかったのに。)
  • He shouldn't have shouted at the customer.(彼は客に向かって怒鳴るべきではなかった。)

3. 過去の出来事に対する予想・推測(〜だったはずだ)

現在完了の推量用法に近く、「(当然)〜だったはずだ」という意味でも使われます。

  • The train should have arrived by now. Let's check the schedule.(電車はもう到着しているはずだ。時刻表を確認しよう。)

could have + 過去分詞の使い方:可能性と逸失した機会

1. 過去にできたのに、しなかったこと(機会の逸失)

「〜できたはずなのに(実際にはしなかった)」という、実現しなかった可能性を表します。

  • I could have won the race, but I fell down.(レースに勝てたはずなのに、転んでしまった。)
  • She could have called an ambulance, but she didn't know what to do.(彼女は救急車を呼ぶこともできたのに、どうすればいいか分からなかった。)

2. 過去の出来事に対する推測(〜だったかもしれない)

確信度がやや低い推測を表す用法です。

  • He could have missed the bus. That's why he's late.(彼はバスに乗り遅れたのかもしれない。だから遅刻しているんだ。)

3. 最悪の結果を免れたことへの安堵(〜になっていたかもしれない)

実際には起こらなかった悪い結果を想像して、安堵する表現です。日本語の「〜するところだった」に相当します。

  • That was dangerous! You could have been seriously injured.(危なかった!大怪我をするところだったよ。)

would have + 過去分詞の使い方:仮定法過去完了の帰結節

1. 過去の事実に反する仮定の結果(もし〜だったら、こうしただろう)

最も重要な用法です。if節(過去完了形)とセットで、実際には起こらなかった過去の出来事を仮定します。

  • If I had known about the party, I would have gone.(そのパーティーのことを知っていたら、行っただろうに。:実際は知らなかったので行かなかった)
  • If she had studied harder, she would have passed the exam.(もっと勉強していたら、試験に合格しただろうに。:実際は不合格だった)

2. 過去の意志・意向(〜するつもりだった)

過去のある時点で持っていた意図を表します。

  • I would have called you, but my phone died.(電話するつもりだったんだけど、携帯の充電が切れてしまって。)

3. 婉曲的な推測・意見(〜だったと思う)

話し手の推測を柔らかく述べる用法です。

  • I would have thought the meeting was cancelled.(会議は中止になったのだと思っていたんだけど。)

3つの違いが一目でわかる比較表

助動詞+have+p.p. 中心的な意味 日本語訳のイメージ 前提となる状況
should have + p.p. すべきだったのにしなかった(後悔・非難) 〜すればよかった/〜すべきだった 義務・アドバイスの不履行
could have + p.p. できたはずなのにしなかった(可能性) 〜できたのに 能力・機会はあったが行動しなかった
would have + p.p. もし〜だったらこうしただろう(仮定の結果) 〜しただろうに 過去の事実に反する仮定(if節とセットが基本)

見分け方のコツ(ネイティブの感覚)
- 「そうすべきだったのに!」と相手を責めたい、または自分を悔いたい → should have
- 「やればできたのに(能力・チャンスはあった)」→ could have
- 「もし状況が違ったら、私はこうしていた」という仮定が根底にある → would have(if節を意識)

たとえば同じ状況でも、視点によって使う助動詞が変わります。

  • You should have locked the door.(鍵をかけるべきだった=非難)
  • You could have locked the door.(鍵をかけることもできた=可能性の指摘)
  • If you had been more careful, you would have locked the door.(もっと注意していたら、鍵をかけていただろう=仮定)

日本人がよく間違えるポイント

❌ 誤り ⭕ 正しい形 なぜ間違いなのか
I should of gone to the party. I should have gone to the party. "have" の縮約形 "should've" を音だけで覚え、"of" と混同する典型的なミス。"of" は前置詞であり助動詞の後には来ない。
If I had money, I would have bought it.(現在の話のつもりで) If I had had money, I would have bought it. / If I had money, I would buy it. 「今お金があれば買うのに」なら仮定法過去(would buy)、「あの時お金があったら買っていたのに」なら仮定法過去完了(had had / would have bought)。時制のズレに注意。
He should have must finish the report. He should have finished the report. 助動詞を2つ重ねることはできない。「〜すべきだった」は should have + p.p. のみで完結する。
I could have went there. I could have gone there. have の後ろは必ず「過去分詞」。過去形(went)ではなく過去分詞(gone)を使う。日本語の「行った」につられて過去形を選んでしまうミスが多い。
もう〜したはずだ、を単純に "should did" と表現してしまう It should have finished by now. 「〜のはずだ」という推量は現在完了的な発想が必要なため、should do ではなく should have + p.p. になる。
shouldn't have + p.p. を「〜しなかったはずだ」と誤訳 You shouldn't have done that.(そんなことしなくてよかったのに/すべきではなかった) not の位置により意味が変わることを混同。shouldn't have は「すべきではなかった(のにした)」という非難・恐縮の表現であり、単純な過去の否定ではない。

特に重要なのは、「〜したはずだ」を英語にするとき、つい日本語の語順通りに「した(過去形)+はずだ」と考えてしまい、should did のような誤った形を作ってしまうことです。英語では「はずだ」という推量のニュアンスをすべて助動詞(should/could/would)が担い、動詞側は必ず「have + 過去分詞」という完了形の骨組みを保つ、という発想の転換が必要です。

また、"could have" を「〜できただろう」という過去の推量の意味で使うか、「〜できたのに(しなかった)」という逸失した可能性の意味で使うかは文脈判断になります。会話の流れの中で、話者が後悔しているのか、単に推測しているのかを意識して読み取る練習をしましょう。

自然な英語例文で使い方を確認

  • I should have brought an umbrella. It's raining so hard now.(傘を持ってくればよかった。今すごい雨が降っている。)
  • She could have become a professional pianist if she had continued practicing.(練習を続けていたら、彼女はプロのピアニストになれていたかもしれない。)
  • They would have arrived on time if the flight hadn't been delayed.(フライトが遅れなければ、彼らは時間通りに到着していただろう。)
  • We shouldn't have eaten so much at the buffet.(ビュッフェであんなに食べるべきではなかった。)
  • You could have told me you were coming! I would have cleaned the house.(来るなら言ってくれればよかったのに!掃除しておいたのに。)
  • My grandfather would have loved this concert.(祖父が生きていたら、このコンサートをきっと気に入っただろう。)
  • I could have sworn I locked the door.(鍵をかけたと確信していたんだけどな。)
  • He must have forgotten; he should have sent the email by 9 a.m.(彼は忘れたに違いない。午前9時までにメールを送っているはずだったのに。)

まとめ:核心ルールを押さえよう

  • 形は「助動詞(should/could/would)+ have +過去分詞」で固定。have のあとは必ず過去分詞であり、過去形ではない。
  • should have + p.p. =過去の後悔・非難(〜すべきだったのに)
  • could have + p.p. =過去に実現しなかった可能性・機会(〜できたのに/〜だったかもしれない)
  • would have + p.p. =過去の事実に反する仮定の結果(if節とセットが基本、〜しただろうに)
  • 話し言葉での縮約形は should've / could've / would've であり、"of" ではなく必ず "have" であることを常に意識する。
  • 日本語の「〜だったはずだ」「〜すればよかった」を直訳的に発想せず、「今の視点から過去を振り返る」英語特有の時間感覚を意識して使い分けることが上達の近道。
シェア: コピーしました!

Should Have / Could Have / Would Have の使い方 — 練習問題 1

英文法トピックShould Have / Could Have / Would Have の使い方を10問の選択式問題で練習しましょう。合格するには少なくとも70%を正解する必要があります。

10 問 合格スコア: 70% テスト 1 /10 回答済み

テストの受け方

  • 各問題をよく読み、最も適切な答えを選んでください。
  • このテストに制限時間はありません — ご自身のペースで進められます。
  • クリック テストを提出 終わったらスコアと詳しい解説を確認しましょう。

ログインして結果を保存する

ログインせずにこのテストを受けることもできますが、結果は保存されません。 ログイン 進捗を記録しましょう。

  1. 1

    Given his indecisive nature, he ___ chosen any of the options, so we made the decision for him.

  2. 2

    I didn't know you needed help. Why didn't you tell me? I ___ helped you.

  3. 3

    I was so worried about the presentation, but it went well. I ___ been so anxious.

  4. 4

    The floor is wet. You ___ been more careful with your drink.

  5. 5

    You ___ bought me a present, but thank you! It's lovely.

  6. 6

    You ___ worried. I told you I would be fine.

  7. 7

    He had all the necessary qualifications for the job. He ___ been hired, but they chose an internal candidate.

  8. 8

    We ___ won the game, but our star player got injured.

  9. 9

    He's lucky he didn't get caught. He ___ gone to jail.

  10. 10

    Why did you buy that expensive car? You ___ saved the money.