経験・継続・結果など今につながる出来事を現在完了形で表す。
現在完了とは、過去と現在のつながりを表す形です。
形は have/has + 過去分詞。過去の出来事が現在とつながっていることを表します。
経験(〜したことがある)・継続(〜し続けている)・完了/結果(〜し終えた)の3つの用法があります。
文法ルール
現在完了は「have/has + 過去分詞」の形で、過去の出来事が現在とつながっていることを表します。主語が三人称単数(he / she / it)の場合は has、それ以外は have を使います。否定形は have/has + not + 過去分詞、疑問形は Have/Has + 主語 + 過去分詞です。
例文
I have been to Paris twice.
私はパリに2回行ったことがあります。
解説: have + been(beの過去分詞)で経験を表します。twiceは回数。
She has lived in Tokyo for 10 years.
彼女は東京に10年間住んでいます。
解説: 主語が She(三人称単数)なので has + lived(live の過去分詞)。継続を表します。
Have you ever eaten sushi?
あなたは寿司を食べたことがありますか?
解説: 疑問形はHave + 主語 + 過去分詞。everは経験を尋ねる副詞。
文法ルール
現在完了には3つの用法があります。経験は「〜したことがある」(ever/never/before/onceなどと使う)、継続は「〜し続けている」(for/sinceと使う)、完了・結果は「〜し終えた」(just/already/yetと使う)を表します。
例文
I have never been abroad.
私は海外に行ったことがありません。
解説: 経験の用法。neverは「一度も〜ない」という否定の経験を表します。
He has worked here since 2015.
彼は2015年からここで働いています。
解説: 継続の用法。sinceは起点(〜から)を示し、現在も働き続けています。
I have just finished my homework.
私はちょうど宿題を終えたところです。
解説: 完了の用法。justは「ちょうど〜したところ」という意味です。
文法ルール
過去形は過去の一時点での出来事を表し、いつ起こったかが明確(yesterday/last weekなど)です。現在完了は過去の出来事が現在とつながっており、いつ起こったかは重要ではありません。明確な過去の時点を示す語とは一緒に使えません。
例文
I went to Tokyo yesterday.
私は昨日東京に行きました。
解説: 過去形を使用。yesterdayという明確な時点があるので現在完了は使えません。
I have been to Tokyo before.
私は以前東京に行ったことがあります。
解説: 現在完了を使用。経験を表し、いつ行ったかは重要ではありません。
I have lived here for 5 years.
私はここに5年間住んでいます。
解説: 現在完了を使用。継続の意味で、現在も住み続けています。過去形(lived)だと今は住んでいない意味になります。
I have see that movie.
I have seen that movie.
解説: 過去分詞 (seen) を使います。原形 (see) ではありません。
She have finished her work.
She has finished her work.
解説: She(三人称単数)なので has を使います。have ではありません。
I have went to Tokyo yesterday.
I went to Tokyo yesterday.
解説: yesterday (明確な過去) があるときは過去形を使います。現在完了は使えません。
I live here for 5 years.
I have lived here for 5 years.
解説: 継続を表すときは現在完了(have lived)を使います。
He has went to school.
He has gone to school.
解説: go の過去分詞は gone です。went は過去形です。