仮定法過去完了の使い方|「もし〜していたら…だったのに」を表す表現

英語の仮定法には「もし〜なら…なのに」と現実と異なる状況を表す表現があります。
特に、仮定法過去完了は、「もし過去に〜していたら、今ごろ〜だったのに」といった過去の事実に反する仮定を表すときに使われます。日本語では「〜していたら」「〜すればよかったのに」にあたる表現です。
今回は、仮定法過去完了の基本ルールと使い方を詳しく見ていきましょう。
1. 仮定法過去完了の基本ルール
仮定法過去完了は、過去に実際には起こらなかったことを仮定して、別の結果を想像する時に使われる文型です。
「もし〜していたら…だったのに」と、後悔・残念な気持ち、別の可能性を想像する際によく登場します。
仮定法過去の基本形は以下の通りです。
If + 主語 + had + 過去分詞, 主語 + would have + 過去分詞 〜.
if 節(条件節)に過去完了形を置き、主節(結果)に「would have + 過去分詞」を使います。
- If I had studied harder, I would have passed the exam.
(もっと勉強していたら、試験に合格していただろうに)
上の例文では、実際には「勉強しなかった → 合格できなかった」という、過去の事実と逆の仮定を表しています。
2. 仮定法過去完了の具体的な使い方
2-1. 過去への後悔を表す
自分や他人の行動を振り返って、「〜していればよかった」と後悔するニュアンスを出せます。
- If she had left earlier, she would have caught the train.
(彼女がもっと早く出発していれば、電車に間に合ったのに) - If I had told the truth, he wouldn’t have been angry.
(もし本当のことを言っていれば、彼は怒らなかったのに)
どちらも「実際にはそうしなかった」→「残念な結果になった」という後悔を表しています。
2-2. 過去の別の可能性を想像する
「もし違う選択をしていたら、別の結果になっていたはずだ」と、現実と違う可能性を考えるときに使います。
- If they had invited me, I would have joined the party.
(もし招待されていたら、パーティーに参加していただろうに) - If we had taken a taxi, we would have arrived on time.
(もしタクシーに乗っていたら、時間通りに着いていただろうに)
2-3. 仮定法過去と組み合わせる(混合仮定法)
仮定法過去完了は、現在への影響を表す仮定法過去を組み合わせて、過去の出来事が現在に影響している仮定を表すこともできます。
- If I had taken that job, I would be living in London now.
(あの仕事を受けていたら、今ごろロンドンに住んでいるのに)
過去の選択(仕事を受けなかった)が現在の状況(ロンドンに住んでいない)に影響している、という内容になります。
3. if を省略した表現(倒置)
フォーマルな文や書き言葉では、if を省略して「Had + 主語 + 過去分詞」という形で始めることがあります。
- Had I known the truth, I would have told you.
もし真実を知っていたら、君に話していただろう。
意味は同じですが、やや格式ばった響きになります。スピーチや文学的な文章でよく見られる表現です。
4. まとめ
- 仮定法過去完了の基本形:
If + 主語 + had + 過去分詞, 主語 + would have + 過去分詞 - 過去の事実と異なる仮定を表す(もし〜していたら…だったのに)
- 使い方:
1. 過去の後悔を表す
2. 過去の別の可能性を想像する
3. 混合仮定法で現在の状況とつなげる - 倒置表現:Had + 主語 + 過去分詞(If を省略できる)