由于规则上有些零碎,以下文法整理,依照现在完成进行式的使用状况分为:
一、不能使用现在完成进行式
二、可以使用现在完成进行式,再细分为与现在完成简单式意思相同/不同
三、只能使用现在完成进行式
规则一:不能使用现在完成进行式
表示状态、感受:know, believe, understand, feel
I’ve known John for 3 years. (I’ve been knowing John for 3 years.)
我和 John 已经认识 3 年了。
表达次数:how much, how many
I’ve drunk three cups of coffee today. (I’ve been drinking three cups of coffee today.)
我今天喝了三杯咖啡。
ever, never, yet, already
I’ve already done my homework. (I’ve been already doing my homework.)
我已经做完功课了。
规则二:可以使用现在完成进行式
现在完成简单式 = 现在完成进行式:live, work, study
I’ve studied English for 5 years. = I’ve been studying English for 5 years.
我学英文学了 5 年。
现在完成简单式 ≠ 现在完成进行式:现在完成简单式强调事件的结束或结果 ,现在完成进行式强调动作的重复性或持续性。
I’ve read the book you gave me. 〔强调事件结束〕
我已经看完你给我的书了。
I’ve been reading the book you gave me. 〔强调事件持续〕
我最近开始看你给我的书。
I’ve eaten breakfast, so let’s go out. 〔强调事件结束〕
我已经吃完早餐了,我们可以走了。
I’ve been eating breakfast, so there are plates all over the table. 〔强调因某事持续进行,而产生眼前结果〕
我刚都在吃早餐,所以桌上才会有这么多盘子。
I’ve waited for hours!〔 强调事件结束〕
我等了好几个小时!
I’ve been waiting for hours! 〔强调事件持续的时间长短〕
我已经等了「好几个」小时了!
规则三:只能用现在完成进行式,表达最近的改变〔最近开始做不曾做过的事〕
My sister has been singing a lot in the shower recently.
我妹妹最近常常在洗澡的时候唱歌。 〔表示她不曾这么做过〕