現在完了形は「過去に始まり、今も続いている」ことについて使用します。
以下、過去記事もご参考に。
結婚して20年になります!
例えば「結婚して何年」という文章を見てみます。
現在形で書くと、
- They are married. : 彼らは結婚している
日本語で「結婚する」というと、「既婚者になる」という行動を思い浮かべます。
「彼らは20年前に結婚しました」と過去形で書きます。離婚していなくても。
「20年前に既婚者になった」というイメージでしょうか。
「結婚する」という日本語に当てはまる英語はきっと”get married”でしょう。
“married”という状態を”get”すると言うイメージ。
一方、”be married”は既婚者であるということを表します。
“They are married”は「(今)、彼らは既婚者である」ということを表しています。
- They have beeen married for 20 years.
20年前に”get married (got married)”して、20年の間”married”の状態であるというイメージです。
現在形と現在完了形の比較
- Matt is in the hospital. : 彼は(今)入院している
He has been in the hospital since Monday. : 月曜日から入院している。 - We know each other very well. : お互いよく知ってるよ
We’ve known each other for a long time. : 昔からよく知ってるよ(長い間なので昔からというイメージ) - Do they have a car? : 車持ってる?
How long have they had their car? : 車所有してどのぐらい?的な感じ - She is waiting for somebody. : 誰かを待ってる(現在進行形)
She hasn’t been waiting very long. : 長いこと待ってる(今待っているだけじゃなく、待ち始めてから随分経つ)
“現在完了形”と”現在完了進行形”
“現在完了形”で使う動詞と”現在完了進行形”で使う動詞があったりします。
現在完了形は、
- I have known ~
- I have had ~
- I have lived ~ など
現在完了進行形は、
- I have been learning ~
- I have been waiting ~など
どのぐらいの期間(how long)と訪ねるときは、”現在完了進行形”を使うことが多いみたい(より一般的。つまり、現在完了形で使うと”間違い”というわけではない)。
- I have been learning English since January. : 1月から英語勉強してるんだ
- It’s been raining all morning. : 朝からずっと雨だよ
- Richard has been doing the same job for 20 year. : 同じ仕事を20年間も…。
- “How long have you been driving?””Since I was 17.” : 「運転はじめてどのぐらい?」「17の時から」
でも、”know”や”like”など、いくつかの動詞では進行形の形は使いません。
- How long have you known Jane? (✖︎ have you been knowing)
- I have had these shoes for ages. (✖︎ I’ve been having)
参考文献
リンク
コメント