例文英文法「現在完了形の継続用法」

この記事は、現在完了形の継続用法を、豊富な例文で学んでいきます。
良質で豊富な例文に触れることにより、現在完了形の継続用法を理解するとともに、知識として定着させます。
英語部の例文英文法シリーズでは、例文を肯定文・否定文・疑問文の順番に見ていきます。
それぞれ5つの例文を用意してありますので、合計15の例文で現在完了形の継続用法を定着させていきます。
例文をまずは自分で日本語に訳し、そのあと解説を読んで学びます。

現在完了形の継続用法を例文で学ぶ!

今回は現在完了形の継続用法です!
現在完了形は中学生で習う英文法です。
現在完了形は継続用法・完了用法・経験用法と分かれます。
この記事ではその中でも、継続用法を学んでいきます!

さあ、頑張りましょう!

肯定文

まずは肯定文を勉強していきましょう!
現在完了形の肯定文を含んだ例文を5つ用意してあります。
まずは自力で訳してみましょう!

(1) I have lived in Chiba for two years.
(2) She has known him since last year.
(3) They have been in London since I saw them.
(4) It has been two years since I came to Tokyo.
(5) It has rained here for more then five days.

さあ、どうですか?
訳せましたか?

それでは、解説に移っていきましょう!

(1) I have lived in Chiba for two years.

まず現在完了形はhave + 過去分詞で表されます。
この例文でいうと、have livedの部分ですね。

そして、現在完了形でも今回は継続用法を学びます。
現在完了形の継続用法は「(ずっと)〜していた」と訳します。
なので、今回のhave livedは「ずっと住んでいた」と訳すわけです。

live in…で「〜に住んでいる」ですから、I have lived in Chibaまでで「私はずっと千葉に住んでいる。」ですね!

for two yearsですが、これは「2年間」と訳します。
for…で「〜間」なんです。
for two weeksは「2週間」だし、for two minutesは「2分間」です。

(1) I have lived in Chiba for two years.
「私は2年間ずっと千葉に住んでいる。」
(2) She has known him since last year.

さあ、2つ目です。
まず、She has knownまで読んだところで、現在完了形に気づくはずです。
have + 過去分詞が見えますよね。
haveがhasになっていますが、これは主語が3人称単数だからです。
She has knownで「彼女はずっと知っていた」ですね。

sinceですが、これは「〜から」と訳します。
今回はsince last yearなので「去年から」。

(2) She has known him since last year.
「彼女は去年から彼のことを知っている。」
(3) They have been in London since I saw them.

3つめです!

まずThey have beenまでで現在完了に気づきます。
ちなみに、beenはbe動詞の過去分詞ですよね。

They have been in Londonって訳せましたか?
これ、現在完了の文ですが、現在形に戻すとこうなります。
They are in London.
「彼らはロンドンにいる。」ですよね。
これが現在完了になっただけなので、「彼らはずっとロンドンにいる」と訳せばいいんです。

(3) They have been in London since I saw them.
「彼らは、私が彼らに会った時から、ずっとロンドンにいる。」
(4) It has been two years since I came to Tokyo.

これ、どうですか?
まずIt has beenまでで現在完了形には気づけますよね。

で、このItですが、これは訳さないんです。
時間を表すitで、例えば「いま何時?」「12時です。」って、
What time is ti now? It’s twelve.
と表しますよね。このItです。
英語で時間を表す時は、とりあえずItを置いて、それ自体は訳さないんです。

なので、It has been two yearsまでで「2年間です」と訳します。
sinceは「〜から」ですから、since I came to Tokyoで「私が東京に来てから」

(4) It has been two years since I came to Tokyo.
「私が東京に来てから2年間です。」
(5) It has rained here for more then five days.

今回もitです。

まず、It has rainedまでで現在完了形に気づけますよね。
「ずっと雨が降っている」と訳します。

more thanは「〜以上」です。
なので、for more than five daysで「5日間以上」となります。

(5) It has rained here for more then five days.
「5日間以上、ここではずっと雨が降っています。」

否定文

さあ、お次は否定文です!

肯定文ができれば、否定文もできますよ!
まずは下記の5つの例文を訳してみてください!

(1) I have not lived in this house since 2000.
(2) She has not had cold for many years.
(3) Many people have not visited the town since the earthquake occurred.
(4) Mike hasn’t played tennis for many years.
(5) I haven’t seen you for a long time.
(1) I have not lived in this house since 2000.

まず、現在完了の否定文ですが、have + not + 動詞の過去分詞で表します。
つまり、have + 動詞の過去分詞の間にnotを入れるということですね!
訳しかたは「(ずっと)〜していなかった」です。

なので、今回の例文でいうとI have not livedまで読めば、現在完了の否定文だと気づきますね。
「私はずっと住んでいない」と訳します。

live in…で「〜に住む」
since…は「〜から」は大丈夫ですよね。

(1) I have not lived in this house since 2000.
「私は2000年からずっとこの家に住んでいない。」
(2) She has not had cold for many years.

これはどうでしょうか?

She has not hadまでで現在完了形の否定文に気づけましたか?
「彼女はずっと持っていなかった」ですよね。

have coldで「風邪をひいている」です。
get coldの「風邪をひく」とセットで覚えておきましょう!
have coldは風邪をひいている状態を表していて、get coldは風邪をひくことそのものを表します!

(2) She has not had cold for many years.
「彼女は長い間ずっと風邪をひいていない。」
(3) Many people have not visited the town since the earthquake occurred.

これはどうでしょうか?
Many people have not visitedまでで現在完了形の否定文だと気づけますよね。
「多くの人はずっと訪れていない」ですね、

sinceは「〜から」ですよね。
earthquakeは「地震」です。
occurは「起こる」。

なので、since以下は「その地震が起きてから」になります。

(3) Many people have not visited the town since the earthquake occurred.
「多くの人々はその地震が起きてから、その街をずっと訪れていない。」
(4) Mike hasn’t played tennis for many years.

Mike hasn’t playedまで読んだところで、現在完了形の否定文だと分かりますね。
「マイクはずっとしていません」です。

for many yearsは「何年もの間」と訳せればOKです!

(4) Mike hasn’t played tennis for many years.
「マイクは何年もの間、テニスをしていません。」
(5) I haven’t seen you for a long time.

否定文はこれで最後です!

まず、I haven’t seenまでで、現在完了形の疑問文に気づきます。
「私はずっと会っていない」ですね。

seeは「会う」と「見える」の意味がありますが、ここでは「会う」です。
for a long timeはよく出る表現で「長い間」です。

なので、直訳としては「私は長い間ずっと会っていない。」です。
ただI haven’t seen you for a long time.は会話でよく使われる決まり文句として「お久しぶりです。」という意味になります。
「お久しぶりです。」はそのほかにもLong time no see.もあります。
I haven’t seen you for a long timeとLong time no see.は2つセットで覚えましょう!

(5) I haven’t seen you for a long time.
「お久しぶりです。」

疑問文

否定文は大丈夫でしたか?
最後に疑問文をやって、現在完了形の継続用法を完璧にしてしまいましょう!

それでは、下記の英文をそれぞれ英語に訳してみてください!

(1) Have you stayed in Japan for ten years?
(2) Has she been sick in bed since yesterday?
(3) How long have you lived here?
(4) Have John and Mary been in Japan since last year?
(5) Has he had the pen for five years?

それでは解説に移ります!

(1) Have you stayed in Japan for ten years?

まず現在完了の否定文ですが、have + not + 動詞の過去分詞で表します
なので、たとえば
They have studied.は疑問文にすると
Have they studied?となります。

今回の例文では、Have you stayed…となっているので、現在完了形の疑問文だとわかりますね。
「あなたはずっと滞在していましたか?」と訳します。

stayですが、後ろにはatかinがつきます。
stay in…とstay at…はどちらも「〜に滞在する」という意味になります。

(1) Have you stayed in Japan for ten years?
「あなたは10年間ずっと日本に滞在していたのですか。」
(2) Has she been sick in bed since yesterday?

こちらも現在完了形の疑問文です。
Has she beenまででわかりますよね。

be sick in bedですが、これは「病気で寝ている」と訳します。
He is sick in bed now.なら、「彼はいま病気で寝ている。」となります。

sinceは「〜から」ですよね。

(2) Has she been sick in bed since yesterday?
「彼女は昨日から病気で寝ているのですか。」
(3) How long have you lived here?

さあ、これはどうでしょうか。
まずHow longですが、ここでは期間の長さを聞いています。
「どのくらい長く〜?」ですね。

live in…で「〜に住んでいる」ですが、hereは直前の名詞を吸収するので、live in hereとはならず、live hereとなります。
「ここに住んでいる」ですね。

(3) How long have you lived here?
「どのくらい長くここに住んでいるのですか。」
(4) Have John and Mary been in Japan since last year?

これはどうでしょう。
まず、Have John and Mary beenまでで現在完了形の疑問文だと気づきますよね。

あとはbeen in Japanですが、これは「日本にいる」です。
これは現在形に戻して考えるとわかりやすくて、
He is in Japan.
は、もちろん「彼は日本にいる」ですよね。
これを現在完了形に直すと、
He has been in Japan.になるわけです。
「彼はずっと日本にいる」となります。

(4) Have John and Mary been in Japan since last year?
「ジョンとメアリーは去年からずっと日本にいるのですか。」
(5) Has he had the pen for five years?

これで現在完了形の継続用法も最後の例文です!
まずHad he hadまでで現在完了の疑問文に気づきます。
「彼はずっと持っていたのですか」ですね。

for…は「〜間」なので、for five yearsは「5年間」になります。

(5) Has he had the pen for five years?
「彼は5年間ずっとそのペンを持っていたのですか。」

最後に・・・

現在完了形の継続用法は理解できましたか?
わからないことがあったら、下記の質問フォームから質問をしてみてください!
全力でお答えします!

[contact-form-7 id=”69″ title=”コンタクトフォーム 1″]