B1 · 中级 章节 22

进阶地道表达:聊聊那些“还没完”的事儿

7 总规则
83 例句
6 分钟

Chapter in 30 Seconds

Master the art of connecting the past to your present reality with confidence.

  • Distinguish between 'for' and 'since' to measure duration.
  • Use Present Perfect to describe unfinished time periods.
  • Describe ongoing actions and states that started in the past.
Bridge the gap between yesterday and today.

你将学到什么

嘿!准备好让你的英语听起来更地道了吗?在这个章节里,我们将一起攻克中级英语的一大难关:如何精准描述那些“从过去一直持续到现在”的事情。你将不再只是生硬地罗列过去,而是学会建立过去与现在的逻辑桥梁。 我们会深入学习 for 与 since 的细微差别,让你在介绍工作经验或友谊时长时游刃有余。除了掌握 yet 和 so far 来描述阶段性进展,你还会解锁“现在完成进行时”这个表达利器。想象一下,当你在面试中自信地说出“I’ve been working on this project...”或者在社交场合聊起“最近一直在忙的事”,这种连接感会让你的表达瞬间变得高级且自然。 通过这 7 个核心规则,你将学会处理 know、be 等状态动词的特殊用法,并敏锐地捕捉时间的变化。学完本章,你就能告别简单的句子堆砌,真正像母语者一样,自如地描述那些正在发生的、不断变化的精彩生活!

Learning Objectives

By the end of this chapter, you will be able to:

  1. 1
    By the end you will be able to: Explain your personal history and current status using the correct tense.

章节指南

Overview

Mastering how to talk about
duration and ongoing actions
is a game-changer for B1 English grammar learners! This chapter is your key to sounding much more natural and articulate in everyday conversations. You'll move beyond simply stating facts and start connecting past experiences with your present reality.
Imagine being able to explain how long you've known your best friend, what you've been doing since you woke up this morning, or how your city has changed over the years. These aren't just advanced concepts; they're essential for truly expressing yourself in English.
By focusing on the Present Perfect and Present Perfect Continuous, we'll bridge the gap between past events and their current relevance. This means you'll confidently discuss things that started in the past and are still true now, or actions that began previously and are still in progress. These structures are vital for expressing a sense of continuity, whether it's describing your experiences up to now or noting things that haven't finished yet.
Get ready to elevate your communication and clearly express those long-term situations and evolving circumstances.

How This Grammar Works

At its heart, this chapter is about connecting the past to the present, focusing on duration and actions that aren't quite finished. The star of the show is the Present Perfect (have/has + past participle). We use it to describe actions that started in the past and continue up to now. For example, to state how long something has been happening, we use 'for' (for a period of time) or 'since' (since a specific start point).
Think:
I have lived here for five years
or
She has studied English since 2020.
Here, 'living' and 'studying' are ongoing.
The Present Perfect is also perfect for discussing things not finished yet, especially when the time period is still active. If it's Monday morning, you might say, "I haven't had breakfast yet today" – because 'today' isn't over, and you could still eat. Similarly, you can use it with time expressions like 'this week,' 'this month,' or 'so far' to summarise experiences within an unfinished period.
I have visited two new places this month so far.
Another crucial application is with state verbs (verbs describing states, not actions, like 'know,' 'be,' 'love,' 'understand'). With these, we use the Present Perfect to show a state began in the past and still continues:
I have known him for ten years,
not
I have been knowing him.
We also use the Present Perfect to describe changes over time:
The city has become much greener.
Finally, when we want to emphasise the ongoing nature or duration of an activity, we turn to the Present Perfect Continuous (have/has + been + -ing verb).
I have been studying for three hours
highlights the continuous effort.
The key difference is often emphasis: Present Perfect for result/fact, Present Perfect Continuous for the activity's duration/process.

Common Mistakes

  1. 1✗ Wrong: I live here for five years.
✓ Correct: I have lived here for five years.
Explanation: When you want to express how long something has been true or happening and it's still true now, you need the Present Perfect, not the Simple Present.
  1. 1✗ Wrong: She is knowing him since 2010.
✓ Correct: She has known him since 2010.
Explanation: Know is a state verb, and generally, state verbs are not used in continuous forms. Use the Present Perfect to show the duration of a state that started in the past and continues to the present.
  1. 1✗ Wrong: I read a book all morning, so I'm tired.
✓ Correct: I have been reading a book all morning, so I'm tired.
Explanation: While
I read a book
is grammatically correct, using the Present Perfect Continuous (have been reading) here emphasises the ongoing action and its effect (being tired) in the present. It highlights the duration of the activity.

Real Conversations

A

A

Hi Alex! Long time no see. How have you been?
B

B

Hey Maria! I'm good, thanks. I have been working really hard on a new project lately. It has taken up most of my time since January.
A

A

Wow, that sounds intense! How many hours have you worked this week so far?
B

B

Oh, probably about 50 already. My eyes are tired because I have been staring at screens all day! But I have almost finished the main part of it.
A

A

That's great news! I haven't seen you this happy about a project in ages.
B

B

Yeah, it's challenging, but I have learned so much. I have never felt this productive!

Quick FAQ

Q

When should I use 'for' vs. 'since' with the Present Perfect?

Use 'for' to specify a duration or period of time (e.g., for two hours,

for a long time
). Use 'since' to specify the starting point of an action or state (e.g., since yesterday, since 2018).

Q

Can I use the Present Perfect with time words like 'today' or 'this week'?

Yes, absolutely! When you use words like 'today,' 'this week,' 'this month,' or 'this year,' and that time period has not finished yet, you typically use the Present Perfect to describe actions or experiences within that ongoing period.

Q

What's the main difference between

I have lived here
and
I have been living here
?

Both are often correct for duration.

I have lived here for five years
states the fact of living here for that duration.
I have been living here for five years
emphasises the ongoing nature or process of living here. The continuous form can sometimes imply a temporary situation or a sense of personal involvement.

Q

Why can't I use continuous forms with state verbs in the Present Perfect?

State verbs describe states, emotions, or conditions (e.g., 'know,' 'love,' 'understand,' 'be,' 'have' for possession), not active processes. They naturally indicate duration without needing the continuous form. So, instead of

I have been knowing,
we say
I have known.

Cultural Context

Native English speakers use these structures constantly, making conversation flow naturally when discussing personal history, experiences, and current situations. There can be slight regional differences; for example, American English sometimes uses the Simple Past where British English might prefer the Present Perfect for recent events (
Did you eat yet?
vs.
Have you eaten yet?
).
However, for emphasizing duration and ongoing actions as covered here, the rules are largely consistent across dialects. In both formal and informal contexts, accurately using the Present Perfect and Present Perfect Continuous shows a good grasp of temporal relationships and adds sophistication to your communication.

关键例句 (8)

1

I have been studying English `for three years` now.

He estado estudiando inglés por tres años ahora.

现在完成时:For 与 Since (持续性动作)
2

She hasn't called me `since Monday morning`.

Ella no me ha llamado desde el lunes por la mañana.

现在完成时:For 与 Since (持续性动作)
3

I haven't seen that new Netflix series yet, but I've heard it's amazing.

Todavía no he visto esa nueva serie de Netflix, pero he oído que es increíble.

现在完成时与时间表达 (for, since, yet)
4

She has lived in London for five years and loves the city.

Ella ha vivido en Londres durante cinco años y le encanta la ciudad.

现在完成时与时间表达 (for, since, yet)
5

I have never seen snow in real life.

Nunca he visto nieve en la vida real.

现在完成时:到目前为止
6

She has worked on this project for three months so far.

Ella ha trabajado en este proyecto durante tres meses hasta ahora.

现在完成时:到目前为止
7

The city skyline `has changed` dramatically since I was a child.

自从我还是个孩子时,这座城市的轮廓已经发生了巨大的变化。

现在完成时:随时间变化 (have/has + V3)
8

My friend `has become` incredibly skilled at coding recently.

我的朋友最近在编程方面变得非常熟练。

现在完成时:随时间变化 (have/has + V3)

技巧与窍门 (4)

💡

The 'All' Exception

When you use 'all' (all day, all my life), you don't need 'for'. Say 'I've been here all day,' NOT 'for all day'.
frontend.learn_grammar.from_rule: 现在完成时:For 与 Since (持续性动作)
💡

The 'Number' Rule

If there is a number (2 hours, 5 days, 10 years), use 'for'. If there is a name (Monday, January, Christmas), use 'since'.
frontend.learn_grammar.from_rule: 现在完成时与时间表达 (for, since, yet)
💡

寻找时间关键词

留意 todaythis week 这些词。如果时间还没过完,通常就要用现在完成时:"I've seen him today."
frontend.learn_grammar.from_rule: 现在完成时:尚未完成的事情(今天、本周)
💡

The 'So Far' Test

If you can add 'so far' to the end of your sentence and it makes sense, you probably need the Present Perfect.
frontend.learn_grammar.from_rule: 现在完成时:到目前为止

核心词汇 (6)

Duration length of time Since starting point Yet until now So far up to this point State a condition or situation Ongoing continuing

Real-World Preview

coffee

Catching up with a colleague

Review Summary

  • have/has + V3
  • have/has + been + V-ing

常见错误

Use Present Perfect for duration, not Present Continuous.

Wrong: I am living here for 5 years.
正确: I have lived here for 5 years.

Since is for a point in time, for is for a period.

Wrong: I have known him since a long time.
正确: I have known him for a long time.

State verbs like 'know' do not take the continuous form.

Wrong: I have been knowing her for years.
正确: I have known her for years.

Next Steps

You've mastered a complex grammar area! Keep practicing, and it will become second nature.

Journaling about your current goals

快速练习 (10)

Find the mistake in the sentence.

Find and fix the mistake:

She has been knowing him since they were children.

✓ Correct! ✗ Not quite. Correct answer: has been knowing -> has known
'Know' is a stative verb and cannot be continuous.

frontend.learn_grammar.from_rule: 谈论正在进行的动作 (现在完成进行时)

Which sentence is correct?

Select the grammatically correct option.

✓ Correct! ✗ Not quite. Correct answer: I went to the gym yesterday.
Because 'yesterday' is a specific past time, we must use the Past Simple.

frontend.learn_grammar.from_rule: 现在完成时:到目前为止

Complete the sentence with the correct form of the verb in brackets.

I ___ (wait) for the bus for twenty minutes.

✓ Correct! ✗ Not quite. Correct answer: have been waiting
The duration 'for twenty minutes' requires the Present Perfect Continuous.

frontend.learn_grammar.from_rule: 谈论正在进行的动作 (现在完成进行时)

Find the error in the sentence.

Find and fix the mistake:

She have lived in London for five years.

✓ Correct! ✗ Not quite. Correct answer: have
'She' is third-person singular and requires 'has'.

frontend.learn_grammar.from_rule: 现在完成时:到目前为止

Fill in the blank with 'for' or 'since'.

They have been married ___ forty years.

✓ Correct! ✗ Not quite. Correct answer: for
Forty years is a duration/period of time.

frontend.learn_grammar.from_rule: 现在完成时:For 与 Since (持续性动作)

哪个句子正确使用了现在完成时来描述随时间推移的变化?

选择正确的句子:

✓ Correct! ✗ Not quite. Correct answer: The price of coffee has increased a lot this month.
“This month”(这个月)是一个未结束的时间段,而且价格上涨是与现在相关的变化,所以现在完成时(“has increased”)是正确的。“Last month”(上个月)是一个已结束的时间,需要使用一般过去时。“Increases”是现在一般时,用于表示习惯性动作。

frontend.learn_grammar.from_rule: 现在完成时:随时间变化 (have/has + V3)

Choose the correct preposition.

I have lived in this apartment ___ 2010.

✓ Correct! ✗ Not quite. Correct answer: since
2010 is a specific starting point, so we use 'since'.

frontend.learn_grammar.from_rule: 现在完成时:For 与 Since (持续性动作)

Correct the mistake in the sentence.

Find and fix the mistake:

I am a teacher since three years.

✓ Correct! ✗ Not quite. Correct answer: I have been a teacher for three years.
We need Present Perfect for duration, and 'for' for a period of time.

frontend.learn_grammar.from_rule: 现在完成时:For 与 Since (持续性动作)

哪句话正确使用了静态动词的现在完成时?

选择正确的句子:

✓ Correct! ✗ Not quite. Correct answer: I have loved this band since high school.
Love 是静态动词,表达长期持续的情感时不使用进行时。Have loved 才是正确形式。

frontend.learn_grammar.from_rule: 现在完成时与状态动词 (我一直知道,她一直都是)

Choose the most natural sounding sentence.

Why are your hands so dirty?

✓ Correct! ✗ Not quite. Correct answer: I have been working in the garden.
The dirty hands are a present result of a recent activity.

frontend.learn_grammar.from_rule: 谈论正在进行的动作 (现在完成进行时)

Score: /10

常见问题 (6)

Yes, but it means the action is finished. I lived there for two years means you don't live there now. I have lived there for two years means you still do.
No, 'since' is almost exclusively used with the Present Perfect (or Past Perfect) in English to show a connection to a later time.
No, 'since' must be followed by a specific point in time (e.g., since 2010). For durations, use for.
Yes, it is grammatically correct and more formal. However, in B1 English, placing yet at the end is more common and natural.
核心就是“连接过去与现在”。当时间还没走完(比如今天、这周),我们就用它。比如 "I haven't seen my friend today.",意思是今天还没过完,我还有可能见到他。
看你说话的那一刻。如果现在是下午,你聊“今天早上”,那早上就结束了;但如果你还在早上,那它就是没结束。比如
I have eaten this morning.
只能在早上说。