Present perfect continuous (have been doing)
Present perfect continuous (have/has been + -ing) — действие, которое началось в прошлом и всё ещё идёт (или только что прекратилось); акцент на самом процессе и его длительности.
Форма: have/has been + -ing
Строится из have/has + been + форма на -ing. «been» не меняется.
I have been working. — Я работаю (уже некоторое время). She has been studying. — Она занимается.
Отрицание: haven't/hasn't been + -ing. Вопрос: Have/Has + подлежащее + been + -ing?
I haven't been sleeping well. — Я плохо сплю в последнее время. What have you been doing? — Чем ты занимался?
- I've been waiting for an hour. — Я жду уже час.
for / since — как долго
Это время любит «for» (отрезок времени) и «since» (точку начала). О длительности спрашивают через «How long have you been…?»
I've been learning English for two years. — Я учу английский два года. She's been working here since 2021. — Она работает здесь с 2021 года. How long have you been waiting? — Как долго ты ждёшь?
- They've been living here since March. — Они живут здесь с марта.
Длительная и простая: процесс и результат
Длительную форму — для процесса или длительности; простую — для завершённого результата или количества.
I've been reading all afternoon. — Я читаю весь день (процесс, возможно, не закончен). I've read three books this month. — Я прочитал три книги за месяц (результат, число).
Часто идут вместе: She's been writing for an hour and has written two pages.
Объясняем видимое
Им объясняют нынешнюю ситуацию или видимый результат — кто-то устал, промок или испачкался из-за недавнего действия.
I'm tired because I've been running. — Я устал, потому что бегал. Your eyes are red. Have you been crying? — У тебя красные глаза. Ты плакал? The ground is wet — it's been raining. — Земля мокрая — шёл дождь.
Частые ошибки
- Не теряй «been»: «I have been working», а не «I have working».
- Окончание -ing только у смыслового глагола: «have been doing», а не «have been did».
- Глаголы состояния (know, like, be) обычно в простой форме: «I have known her for years», а не «I have been knowing».