should have、could have、would have:用真實影片學過去式情態動詞

should have、could have 與 would have 的差別,加上表示推測的 must have 和 might have,配上母語者的真實影片,以及他們實際說出口的樣子。

Roman Maksimyuk

Roman Maksimyuk

Reelang 首席語言教學狂熱者

10 分鐘閱讀發布於 2026年10月27日

should have、could have 和 would have 都在講過去,而且都在講「沒有發生的過去」。差別在於態度:

形式意思例句
should have + 過去分詞當時那樣做才對,但沒發生(後悔或責備)I should have called you.
could have + 過去分詞當時有可能,但沒發生I could have called you, but I was tired.
would have + 過去分詞另一個過去會帶來的結果(想像)I would have called you if I'd had your number.

所以 should have 是在評判過去,could have 是在列出你當時有的選項,would have 則是想像另一個過去會長什麼樣子。講話時,這三個都會縮成 should've、could've、would've,聽起來幾乎就是「shoulda」「coulda」「woulda」。

同一個結構(情態動詞 + have + 過去分詞)還有第二個工作:推測過去。「She must have left」表示你幾乎可以確定。「She might have left」表示也許。「She can't have left」表示你確定她沒走。

以下每個形式都有簡短說明,搭配母語者使用它的真實影片。規則講完之後,還有一節談人們實際怎麼說,那跟文法書寫的不一定一樣。點字幕裡的任何一個字,就能看到意思。

結構:情態動詞 + have + 過去分詞

這篇文章裡的每個形式,結構都一樣:

should / could / would / must / might / may / can't + have + 過去分詞

  • I should have gone.
  • She could have won.
  • They would have seen it.
  • He must have forgotten.

有三件事常讓學習者卡住:

  1. **have 永遠不變。**要說 she should have,不能說 she should has。情態動詞後面的動詞維持原形,have 就是那個原形。
  2. 第三個字是過去分詞,不是過去式。是 I should have gone,不是 I should have went。(母語者常常違反這條。後面會再談。)
  3. 否定加在情態動詞上:shouldn't have、couldn't have、wouldn't have。I should have not gone 這種說法存在,但很少見,而且聽起來生硬。

Should have:後悔與責備

should have 用在當時該做、卻沒做的事。講自己,是後悔;講別人,就是責備。

在這支二手衣開箱裡,創作者想起一件試穿過卻沒買的衣服。注意聽「should have just switched out the buttons」:

智慧字幕逐字中文解釋

Butthebuttons,nowthatI'mthinkingaboutit,Ishouldhavejustswitchedoutthebuttonsandboughtitbecauseitwascute.

0:37 / 1:24
美式英語日常對話沒問題
在 Reelang 用這支影片學

這是最典型的購物後悔。解法很簡單,她當時沒想到,現在東西已經不在了。

這裡有另一支二手衣開箱裡更短的例子。注意 should've 有多快,就一拍:「SHUD-uv」。

智慧字幕逐字中文解釋

Ishould'vetriediton.

1:32 / 2:35
美式英語進階話題也能聊
在 Reelang 用這支影片學

把 should have 指向別人,就成了抱怨。「You should've told me」是電視劇裡最常見的台詞之一:

智慧字幕逐字中文解釋

Youshould'vetoldmeabouthimsooner.

0:07 / 2:06
英式英語進階話題也能聊
在 Reelang 用這支影片學

否定的 shouldn't have 則是在批評真的發生過的事。在這個場景裡,女兒說出她對父親離開的看法:

智慧字幕逐字中文解釋

Andheshouldn'thaveleftusforJane.

0:19 / 0:56
美式英語日常對話沒問題
在 Reelang 用這支影片學

你也會聽到「I should have known」,意思是「其實早有跡象,是我沒看出來」。人們在被騙、被詐,或朋友又做了那些老套的事之後,就會這樣說。

Could have:你沒選的那些選項

could have 用在過去有可能、但沒發生的事。裡面沒有評價,它只是說:當時那扇門是開的。

很常見的用法是「things could have been worse」。風災過後,記者和一家人站在壓到他們房子的那棵樹旁邊:

智慧字幕逐字中文解釋

Especiallyseeingthetreeontheleftsideofthehouseheretothinkifyouguysmaybewereshelteredonthatside,thingscouldhavebeenmuchdifferent.

1:26 / 3:25
美式英語日常對話沒問題
在 Reelang 用這支影片學

大家都平安,但很驚險。「Could have been much different」是一種客氣、保留的說法,其實是「我們差點就沒命」。

could have 也可以描述你當時有、卻沒選的選擇:「I could have taken the train, but I wanted to drive.」

could have 當成溫和的抱怨

could have 指向別人時,就像比較溫和的 should have。「You could have called」的意思是「打電話是做得到的,那你為什麼不打?」加上 at least,抱怨就更尖銳:

智慧字幕逐字中文解釋

Youyoucould'veatleastansweredmytextthelastfewdays.

2:24 / 3:21
美式英語進階話題也能聊
在 Reelang 用這支影片學

Couldn't have asked for a better...

否定的 couldn't have 表示某件事不可能。有一個用到它的句型在英文裡到處都是:「I couldn't have asked for a better...」,意思是「這已經完美了」。既然不可能更好,也就沒有更好的可以要求了。

智慧字幕逐字中文解釋

Ican'tbelieveit'smyfirsttimeinNewYork,andIcouldn'thaveaskedforabetterpersontoshowmearound.

0:00 / 1:30
美式英語基礎穩固
在 Reelang 用這支影片學

你會在婚禮致詞、領獎感言和旅遊 vlog 裡聽到它。最經典的是「Couldn't have asked for better weather」。

Would have:沒有發生的那個過去

would have 用來想像一個不同的過去,以及它的結果。多數時候它會搭配 if 子句,而 if 子句用過去完成式(had + 過去分詞)。這就是第三條件句:

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

  • If I had known, I would have come.
  • If she'd asked me, I would have helped.

這支短劇裡就是教科書般的形式。注意聽「If I'd known... I would have bought」:

智慧字幕逐字中文解釋

IfI'dknownhowhappytheywouldmakehim,IwouldhaveboughtthoseglassesforBoblongago.

1:13 / 2:17
美式英語日常對話沒問題
在 Reelang 用這支影片學

「I'd known」就是「I had known」。講話時 had 縮成 'd,would have 縮成 would've,所以整句可能變成「If I'd known, I would've...」。'd 和 've 都很小聲,要很用力聽。

沒有 if 的 would have

if 子句常常是心照不宣的。「I would have loved to live in the 1950s」的意思是「如果我生在那個年代,我會很喜歡」:

智慧字幕逐字中文解釋

IwouldhavelovedtoliveinthenineteenfiftiesinallthisChristianDiorera.

1:56 / 3:31
英文日常對話沒問題
在 Reelang 用這支影片學

還有一個很有趣的用法。「15 year old me would've...」是談論年輕時的自己的常見說法。if 子句藏在「15 year old me」裡:如果我十五歲時發現這個包包的話。

智慧字幕逐字中文解釋

15yearoldmewould'vedroppedtomykneesforthisbag.

1:35 / 3:27
美式英語日常對話沒問題
在 Reelang 用這支影片學

「I never would've thought...」是另一個沒有 if 的日常說法,意思是「我完全沒想到會這樣」。

Must have、might have、can't have:推測過去

同樣的結構還有第二個工作:讓你根據現在看到的情況,推測過去發生了什麼。你有多確定,決定用哪個情態動詞:

確定程度形式例句
幾乎確定發生了must haveShe must have left. Her coat is gone.
也許發生了might have / may have / could haveShe might have left early.
幾乎確定沒發生can't have / couldn't haveShe can't have left. Her coat is still here.

Must have:我幾乎可以確定

must have 是一種結論。你看到證據,推論出當時一定發生了什麼。一位美食 vlogger 吃到非常嫩的雞肉,推測它是怎麼煮的:

智慧字幕逐字中文解釋

Itmusthavebeensimmeringforhourstogetthattenderandjuicy.

0:21 / 0:59
美式英語日常對話沒問題
在 Reelang 用這支影片學

must have 也有溫柔的用法。「That must have been hard」是讓對方知道你理解他經歷了什麼。你無法確切知道他的感受,但你在推測,而這個推測就是一種同理。

智慧字幕逐字中文解釋

Thatmusthavebeensopainfultohearthat.

1:39 / 3:09
美式英語日常對話沒問題
在 Reelang 用這支影片學

如果你只想學一個會話用的過去式情態動詞,就學這個。朋友跟你說故事時,「That must have been scary」「that must have been so exciting」「you must have been exhausted」都是好回應。

Might have 和 may have:也許

might have 和 may have 意思一樣:這件事有可能發生過。might 在口語裡稍微常見一些。這支影片列出 quiz 這個字可能的來源。沒人能確定,所以每個說法都用 might have:

智慧字幕逐字中文解釋

Somepeoplethinkitmighthavebeenaslangterm,meaningsomethingridiculous.

0:03 / 0:48
英文日常對話沒問題
在 Reelang 用這支影片學

may have 還有一個好玩的用法。人們會用「I may have...」來講一件他們明明就做了的錯事。這是在開玩笑:說話者假裝自己不確定。「I may have eaten all the cookies」的意思是「餅乾全被我吃了」。「I may have underestimated how cheesy that rice was」(來自一支料理影片的真實台詞)意思是那份飯的起司多到誇張。

Can't have 和 couldn't have:不可能

can't have 和 couldn't have 表示你確定某件事沒發生,或不是真的。「It couldn't have been easy for her」的意思是「我相信那對她來說很辛苦」:

智慧字幕逐字中文解釋

Itcouldn'thavebeeneasyforher.

0:43 / 4:00
美式英語進階話題也能聊
在 Reelang 用這支影片學

注意:美式英文不能用 mustn't have 來表達這個意思。must have 的相反是 can't have 或 couldn't have。(有些英國人的確會說 mustn't have,但那不是標準形式。)

couldn't have 也可以搭配比較級,表示某件事好到或糟到極點。「It couldn't have been worse」表示那是一場災難。「She couldn't have been nicer」表示她人超好。

should've、could've、would've 聽起來是什麼樣

寫出來時,你會看到 should have 和 should've。講話時,have 幾乎一定會縮短。h 消失,母音變成弱弱的「uh」音,所以:

  • should have → should've → 「SHUD-uv」
  • could have → could've → 「KUD-uv」
  • would have → would've → 「WUD-uv」
  • must have → must've → 「MUST-uv」
  • might have → might've → 「MITE-uv」

在快速、隨性的口語裡,v 常常也會不見,變成「shoulda」「coulda」「woulda」。這是你從母語者口中最常聽到的音。如果把 should have 完整唸出來、h 很清楚,聽起來就是刻意或強調,像「You really should HAVE told me」。

字幕幾乎一定寫標準拼法,should have 或 should've,就算說話者明明唸的是「shoulda」。所以看字幕時,請預期螢幕上的字會比你聽到的音更長。

母語者實際上怎麼說

上面的規則是寫作和考試需要的。日常口語會在幾個可預測的地方偏離它們。這些都不罕見,而且全都出自母語者。以下是你會聽到什麼、誰在說,以及要不要跟著用。

Should of、could of、would of

因為 should've 聽起來和 should of 一模一樣,很多母語者就這樣寫:「I should of known」「you could of told me」。這是英文裡最常見的拼字錯誤之一,在留言、訊息和社群上隨時看得到。

在口語裡,兩者毫無差別,沒人聽得出你是說 should've 還是 should of。但在書面上,should of 永遠是錯的。那個字是 have,因為文法上那裡需要一個動詞。所以看到時要看得懂,但永遠不要寫,就算只是隨手傳訊息,只要你希望自己的英文看起來講究。(我們的字幕裡不會出現它,因為我們都拼成 should've 或 should have。)

Shoulda、coulda、woulda

shoulda、coulda、woulda 是把口語發音寫下來的形式。你會在歌詞、漫畫、訊息,以及「shoulda, coulda, woulda」這句俗語裡看到它,那句話的意思是「別再講你沒做的那些事了」。我們的字幕通常寫成 should've 和 could've,但有時會保留那個音:

智慧字幕逐字中文解釋

YoushouldajustcheatedsoIcouldahadareasontoleaveyou.

0:03 / 1:00
美式英語日常對話沒問題
在 Reelang 用這支影片學

那是一支講情侶如果誠實會說什麼的短劇,兩個形式出現在同一句裡。下面是一位媽媽解釋她的感恩節焗烤時說的 woulda:

智慧字幕逐字中文解釋

Iwouldaaddedmarshmallows,butmykidsatethemall.

1:42 / 2:33
美國南方英語基礎穩固
在 Reelang 用這支影片學

你該跟著用嗎?用說的,可以,因為快速的英文本來就長這樣。用寫的,只限非常隨性的訊息。

用「If I would have known」取代「if I had known」

教科書的第三條件句在 if 子句裡放 had:「If I had known, I would have come.」在美式英文裡,尤其是口語,很多人兩邊都放 would have:「If I would have known, I would have come.」

你會從 vlogger、新聞記者和電影明星口中聽到。這是 Timothée Chalamet 在金球獎致詞時開玩笑說自己要感謝《創智贏家》的 Kevin O'Leary:

智慧字幕逐字中文解釋

IfyouwouldhavetoldmewhenIwas19yearsold,I'dbethankingmisterwonderfulfromSharkTank.Alright.

0:27 / 1:07
美式英語日常對話沒問題
在 Reelang 用這支影片學

「If you would have told me」是「if you had told me」的美式口語版。下面這位 vlogger 則在解釋,這些萬聖節 Oreo 如果出現在她小時候會有多重要:

智慧字幕逐字中文解釋

IfIwouldhavegottentheseonHalloweenasakid,Iwouldhavefreakedout.

1:01 / 1:35
美式英語基礎穩固
在 Reelang 用這支影片學

文法書說這是錯誤,在考試和正式寫作裡的確是。但它在美國實在太普遍,你應該預期自己會聽到,而且很多美國人完全不覺得有問題。英國人說得少很多。我們的建議是:聽得懂,但別寫;講話時也用 if I had 或 if I'd。這樣到哪裡都行得通。

用「I could've went」取代「I could have gone」

記得第三個字要用過去分詞。遇到不規則動詞時,很多母語者會改用過去式:「should have went」「could've took」「would've saw」。這在美國的隨性口語裡很常見,尤其是南方和非裔美國英語,在英國也聽得到。

這則新聞講的是一次失誤的美式足球踢球,意外讓醫生發現了腫瘤。注意聽記者之後的那一句:

智慧字幕逐字中文解釋

Itcould'vewentsomuchworse.

0:53 / 1:13
美式英語日常對話沒問題
在 Reelang 用這支影片學

標準說法是「it could have gone so much worse」。其他動詞也會出現同樣的情形:「nobody would've saw me」(seen)、「you should've took his advice」(taken)、「she could've came」(come)。這些說話者聽起來完全自然,大家也都聽得懂。但在考試、求職申請或任何書面場合,請用分詞:gone、taken、seen、come、done。

Might could:兩個情態動詞疊在一起

在美國南方,以及北邊和西邊的一些地區,人們會把兩個情態動詞疊起來:「I might could help you」,意思是「我也許有辦法幫你」。語言學家稱之為雙重情態動詞。它屬於地區性、非正式用法,在全國性電視上很少聽到,但在地方電視台偶爾會溜出來。這是內布拉斯加州奧馬哈的一位氣象主播在講接下來幾天的天氣:

智慧字幕逐字中文解釋

Mightcoulddryout,Tuesday,Wednesdaywaverly.

2:15 / 2:21
美式英語日常對話沒問題
在 Reelang 用這支影片學

「Might could dry out」的意思是「天氣也許有機會放晴變乾」,或乾脆說「也許會變乾」。除非你住在南方,不然別跟著用。但如果你到德州或阿拉巴馬,有人跟你說「we might could go tomorrow」,你現在知道他在說什麼了。

什麼推測都用 must've

在對話裡,must've 的工作量很大。母語者幾乎任何對過去的有把握推測都用它,而且常常不提出任何證據:「She must've known」「he must've forgotten」「I must've left it in the car」。這是標準英文,你應該跟著用。

唯一要注意的是:口語裡幾乎不會出現 h 很清楚的 must have。它是「MUST-uv」,有時乾脆就是「musta」。

問與答

should have、could have 和 would have 有什麼差別?

三個都在講沒有發生的過去。should have 表示當時那樣做才對(I should have called),could have 表示當時有可能(I could have called, but I was tired),would have 則描述另一個過去會有的結果(I would have called if I'd had your number)。

可以說 should of 嗎?

不行。在書面上,正確形式是 should have 或 should've。人們會寫 should of,是因為口語裡 should've 聽起來一模一樣,但文法上那裡需要動詞 have。

「if I would have known」正確嗎?

在標準英文裡,正確形式是「if I had known」或「if I'd known」。「If I would have known」在美式口語裡非常常見,但在考試和正式寫作裡算是錯誤。

must have been 是什麼意思?

must have been 是根據證據對過去做出的有把握推測。「It must have been cold」表示你幾乎可以確定當時很冷。「That must have been hard」也是一種溫柔的說法,讓對方知道你理解他經歷了什麼。

must have 和 might have 有什麼差別?

must have 表示你幾乎確定某件事發生過。might have 表示有可能,但你不確定。must have 的相反是 can't have 或 couldn't have,不是 mustn't have。

是 should have gone 還是 should have went?

should have gone 才對,因為 have 後面的動詞要用過去分詞。很多母語者在隨性口語裡會說 should have went,但寫作和考試請用 gone。

should've、could've、would've 怎麼唸?

have 會縮成一個很弱的「uv」音,所以 should've 聽起來像「SHUD-uv」。在快速口語裡 v 常常也會消失,就變成 shoulda、coulda 和 woulda。

怎麼習慣過去式情態動詞

文法表能幫你把這些形式組出來。但在正常語速下聽懂它們,是另一種能力。「Shoulda」「musta」和「I'd known」不到半秒就過去了,你得在真實口語裡聽過很多次,才會抓得到。這就是 Reelang 的用途:母語者的短影片,字幕可以點,而且符合你的程度。

從適合你程度的英文影片開始,或是直接打開 app,讓推薦牆幫你挑。每次有人說 should've、could've 或 must've,試著把那個 've 聽出來。

開始觀看

真實的 英文 影片,按理解難度分級。沒有測驗,不用註冊。

看 英文