Quay lại Blog

第三條件句完全攻略:If I had known… 怎麼說「早知道就好了」

第三條件句完全攻略:If I had known… 怎麼說「早知道就好了」

我們每天都在後悔小事。「早知道就帶傘了」「那天如果早點出門就不會遲到」——這些對著已經發生、無法改變的過去做假設的句子,中文講起來很自然,英文卻常常卡住。學會了,你就能精準說出「如果當初…,結果就會…」這種帶著情緒的句子。這就是**第三條件句third conditional)**的工作,今天我們一次把它講清楚。

第三條件句在說什麼

第三條件句談的是與過去事實相反的假設。事情已經發生了,我們回頭想像:「如果當時是另一種情況,結果會不一樣。」

  • If I had known, I would have helped you.(如果我當時知道,我就會幫你。)→ 言下之意:我那時候不知道,所以沒幫上。
  • If she had studied, she would have passed the test.(如果她當時有讀書,她就會通過考試。)→ 言下之意:她沒讀書,所以沒過。

注意這個關鍵:第三條件句永遠在描述沒有發生的事。正因為與事實相反,它特別適合用來表達後悔、慶幸或檢討。

句型公式:兩個地方都要「往回退一格」

第三條件句的骨架很固定,記住這一行就成功一半:

If + 主詞 + had + 過去分詞, 主詞 + would have + 過去分詞

  • 條件子句(if 那半句)用 had + 過去分詞(也就是過去完成式)。
  • 結果子句(另一半句)用 would have + 過去分詞

看一組對照你就懂了。現在的事實是「我沒看天氣預報,所以淋濕了」,要假設相反:

  • If I had checked the weather, I would have brought an umbrella.(如果我當時看了天氣預報,我就會帶把傘。)

兩個動詞都「往回退一格」到過去:checkhad checkedbringwould have brought。這是學習者最常出錯的地方,我們特別示範對與錯:

  • If I had checked the weather
  • If I checked the weather ✗(這變成第二條件句,談的是現在或未來)
  • I would have brought an umbrella.
  • I would brought an umbrella. ✗(漏了 have

帶得走的訣竅:把整句往回推到過去。if 那邊用 had + p.p.,結果那邊用 would have + p.p.,兩邊都要有「have / had 的影子」。只要其中一邊忘了往回退,整句的時間感就會跑掉。

would 也可以換成 couldmight

結果子句不一定要用 would,換成 could havemight have 會帶來不同語氣:

  • If you had called me, I could have picked you up.(如果你當時打給我,我本來可以去接你。)→ 強調「有能力做到」。
  • If we had left earlier, we might have caught the train.(如果我們當時早點出發,說不定就趕上火車了。)→ 強調「有可能,但不確定」。

這三個都很好用。先把 would have 練熟,再慢慢加進 could havemight have

wish 結構互相呼應

當你想單純表達「對過去的後悔」,又不想說一整句條件句時,可以用 wish + 過去完成式had + p.p.)。它和第三條件句是一對好朋友,講的是同一種「與過去相反」的感覺。

  • I wish I had studied harder.(真希望我當時有更用功讀書。)
  • I wish I hadn't said that.(真希望我當時沒說那句話。)

把它和第三條件句並排看,關聯就很清楚:

  • I wish I had brought an umbrella.(真希望我當時帶了傘。)
  • If I had brought an umbrella, I wouldn't have got wet.(如果我當時帶了傘,就不會淋濕了。)

兩句都用 had + 過去分詞,因為都在回望過去。這裡留意一個小提醒:談過去的後悔要用 had + 過去分詞I wish I had studied),動詞要記得變成過去分詞;如果只說 I wish I studied,意思就跑到「現在的願望」去了。把這兩句多讀幾遍對照,差別就會內化。

三種條件句一張總表

最後給你一張帶得走的總表,把第三條件句放回它的家族裡,差異一眼看懂:

  • 第零條件句(永遠成立的事實)If + 現在式, 現在式。
    • If you heat water, it boils.(水加熱就會沸騰。)
  • 第一條件句(未來真實的可能)If + 現在式, will + 原形。
    • If it rains, I will stay home.(如果下雨,我就待在家。)
  • 第二條件句(現在或未來的不真實假設)If + 過去式, would + 原形。
    • If I were rich, I would travel the world.(如果我有錢,我就會環遊世界。)
  • 第三條件句(過去的不真實假設)If + had + p.p., would have + p.p.
    • If I had saved money, I would have travelled.(如果我當時存了錢,我就會去旅行了。)

一句話記住差別:往未來看,用第一條件句;對現在做白日夢,用第二條件句;回頭懊悔過去,用第三條件句。時間越往回,動詞就退得越多。

Loopy 怎麼練

文法公式看懂只是第一步,真正記住要靠反覆在真實句子裡遇到它Loopy分級課程會依你的程度(third conditional 落在 B1)把這些句型放進日常對話與故事情境,你在聽一段「早知道就…」的真實對話時就會自然吸收,省去硬背公式的力氣。

跟著做這幾件事,進步會很有感:

  • 聽說跟讀模式開口念出 If I had known,把「had + p.p.」「would have + p.p.」的節奏練到順口,下次想說的時候就不會卡。
  • 遇到 had broughtwould havewish 這些卡住的字,點開內建字典就能查發音、看例句,當場弄懂。
  • 學過的句型會進入**記憶曲線複習**,在你快要忘記的時間點提醒你再練一次,第三條件句就會慢慢變成你開口就來的反射。

別怕一開始說錯,把 goed 改成 went 的過程每個學習者都走過。一句一句練,你會發現「早知道就好了」這種句子,講起來其實沒那麼難。