• ベストアンサー

How long has passed ~? は正しい?

現在完了文で、 How long has it been since you came to this town? はよく見ますが、 How long has(have?) passed since you came to this town? で同じ意味を表すことはできるのでしょうか? 教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • trgovec
  • ベストアンサー率52% (2538/4879)
回答No.1

How long has it been since...? これのもとになるのは It has been X years/months etc. since... 「…からX年(ヶ月など)になる」 このような表現で、「X年」の部分を how long という疑問詞(副詞+副詞)に置き換えたものです。 pass は「経過する/過ぎる」という意味ですから、主語として立てられるのは、例えば「何年、何ヶ月、何日」という名詞を含んだものである必要があります。 How many years/months/days have passed since...? 「…から何年/何ヶ月/何日になりますか」 年、月、日など具体的に言わずに「どのくらい過ぎたか」という言い方が日本語ではできますが、how long は副詞なので英文法的には主語になれません。 なおこのような文では年月は一つずつ過ぎていくものと考えるので複数に呼応した have を使います。長い年月でも一つのまとまりと考えるときは単数扱いします。 Ten years is a long time.「10年は長い」 どうしても具体的に「何年/何ヶ月」とか言うしかないのかと言えば、文法的には他の言い方もできないわけではありません。 How much time has passed since...? 「…からどのくらいの時がたったのか」 ( 一つのまとまった量と考えるので time は単数です。how many times では「何回」ということになります) しかしかえって仰々しくなるので普通には使いません。 結局 ・ how long は副詞なので主語になれない。 ・ pass は時間に関する名詞を主語にする。 ・主語なし、または時間など自然現象の it を主語にして pass を使うことはできない。 こういうわけで *How long has passed...? はできないのです。

inoinoko2
質問者

お礼

早速の回答ありがとうございました。 また、大変明解でわかりやすく納得しました。 またわからないことが出てきましたら、是非ともよろしくお願いします。

関連するQ&A

専門家に質問してみよう