现在完成时态的理解不到位

看到个句子,全文是关于租房的问题: 

But this one hasn't been decorated for a few years,which has kept the rent down a bit. 

这个has kept 我理解的不是很到位。从意思上看,租金在当初因为没被装修原因就已经被压低了,并持续到现在。所以,这个句子是不是可以加上个时间状语,比如“up to now”? 另一个句子我在书上看到的: I have been jogging for the last few month. 我通常见到的都是for后面加时间长度,而且刚刚在网上也没有太多关于这个用法的。不过,替换成since应该也可以吧,是不是它们之间也可以互换呢? 望老师指点。

请先 登录 后评论

最佳答案 2019-07-28 16:00

But this one hasn't been decorated for a few years,which has kept the rent down a bit. 

whch的先行词为主句,已经包含for a few years的意义在内。所以has kept同样也就隐含了for a few years这个状语在内了,没有必要再加时间状语。

I have been jogging for the last few months.

这是现在完成进行时表示一个临时习惯迄今为止持续了多久。该句隐含了every day之类的频度状语。如果是长期习惯,则可以用现在完成时:

I have jogged every day for 20 years.

请先 登录 后评论

其它 0 个回答

  • 1 关注
  • 1 收藏,1940 浏览
  • wong 提出于 2019-07-24 15:01

相似问题