【问】 (A) We stayed at the hotel (for) three weeks. (B) He taught her for three years. 许多教科书上说,在for用于表示时间时,在for引导的短语中,for常常可以省略。请问上面两个句子里的for是否都可以省略掉? 【答】 当for引导的时间短语用来修饰具有静态意义的动词时常常可以省略: 1. They lived in China (for)seven years. 2. The meeting lasted (for) two hours. 3. We stayed at the hotel (for) three weeks. 4. He has worked here (for) a year. 5. They will be in Chicago (for) a year. 当for与以all开头的名词短语连用时,必须省略for[参见for all day(×)]: She’s been lying in bed all day. 但是,当for短语修饰动态动词时或者用于否定句时,则介词for不能省略。 1. I’m going away for a few days. 我要离开几天。 2. I haven’t seen him for three weeks. 我有三个星期没有看见他了。 所以,CGEL把下列句子看作是错误的: 1. × I taught her three years. 2. × I haven’t spoken to her three months. 另外,当for用在句子开头时,一般也不能省略: 1.{He lived abroad (for)six years. For six years,he lived abroad. 他在国外住了六年。 2. He waited anxiously at hospital (for) some time. For some time,he waited anxiously at hospital. 他在旅馆焦急地等了一会儿。