<例文>
I have lived in Osaka for thirty years.
「私は30年間大阪に住んでいます。」
<ポイント>
・現在完了形を使う文で、「(ずっと)〜してきた」となるものを継続用法という
・since 〜:〜から(ずっと)、for 〜:〜の間
・〔How long + [現在完了の疑問文]〜?〕の形で、「どのくらい(の期間)〜していますか?」
現在完了形を使う文で、「(ずっと)〜してきた」となるものを継続用法といいます。
I have lived in Osaka for thirty years. (私は30年間(ずっと)大阪に住んでいます。)
この用法のポイントは「〜から(起点)」や「〜の間(期間)」を表すことばと一緒に使われることが多い、ということです。
・since 〜:〜から(起点)
I have lived in Osaka since thirty years ago. (私は30年前から大阪に住んでいる。)
・for 〜:〜の間(期間)
I have lived in Osaka for thirty years. (私は30年間大阪に住んでいます。)
文の意味に合わせて、since / for を使い分けることになります。
(2)How long + [現在完了の疑問文]〜?
〔How long + [現在完了の疑問文]〜?〕の形で、「どのくらい(の期間)〜していますか?」
という意味になります。
How long have you known him? (あなたはどのくらいの間、彼を知っていますか?)
(=いつから彼を知っていますか? と考えてもよい)
こちらに対する答えは、since 〜 / for 〜 を使って答えましょう。
I have known him since he was ten. (彼が10才のときから知っています。)
I have known him for five years. (5年は知っています。(知り合って5年です))
<その他の例文>
We have been here since last night.
「私たちは昨日の夜からここにいます。」
How long has Tom been absent from school?
「トムはどれくらいの間学校を休んでいますか。」
<補足>
「〜から」を表す since は、前置詞としても、接続詞としても使うことができます。
・前置詞の since(うしろに、[名詞]がくる)
I have known him since five years ago. (私は彼を5年前から知っています。)
・接続詞の since(うしろに、[主語]+[動詞]〜 がくる)
I have known him since he was ten. (私は彼を、彼が10才のときから知っています。)
<まとめ>
・現在完了形を使う文で、「(ずっと)〜してきた」となるものを継続用法という
・since 〜:〜から(ずっと)、for 〜:〜の間
・〔How long + [現在完了の疑問文]〜?〕の形で、「どのくらい(の期間)〜していますか?」
※ 理解を優先するために、あえて大雑把に書いてある場合があります |
---|