回答
2022-07-24 06:32:36
Kevin@MusicoLingo
I can't sleep because I had coffee before bed.
英語の「drink」は、日本語の「飲む」とは使われ方が違います。「drink」は酒類を飲むことや、飲み物を口の中に入れてゴクリと飲み込む動作を表す、具体性を帯びた言葉です。「drink coffee」でも文法的には正しいですが、この場合は、その動作よりも、「coffee」の方が大切な言葉なので、動詞は「have」で十分です。
「coffee」は液体で、数えられませんから(不可算名詞)、「a coffee」は間違いです(飲食店で注文する場合を除いて)。数を表現したければ、「a cup of coffee」、「two cups of coffee」のように言います。しかし、何杯飲んだかと表現する必要がなければ、「coffee」だけで十分です。
「before sleep」は「睡眠前」なので、「I can’t sleep」と言っているのと矛盾しています。眠っていないのですよね。「before bed」で、「就寝前」という意味になります。