首先看下面的一个对话:
— Is your sister familiar with Wuhan?你姐姐熟悉武汉吗?
— Yes, she has been there for three years.是的,她在那儿已经住了三年了。
have been to 表“去过某地”(现已回来);have been in / at 既可表“曾在某地呆过”,也可表“一直在某地”。不带持续性时间状语是“已完成用法”,带持续性时间状语是“未完成用法”。请比较下面三个不同的答语:
1)Yes, she has been there (many times). 是的,她去过那儿(很多次)。
已完成用法。可带或不带频度状语 many times(这种状语不同于持续性时间状语),表示“现在已不在武汉”,there = to Wuhan。
2)Yes, she has been there. 是的,她在那儿呆过 / 住过。
已完成用法。没有带持续性时间状语,表示“现在已不在武汉”,there = in Wuhan。
3)Yes, she has been there for three years. 是的,她在那儿已经住了三年了。
未完成用法。带有持续性时间状语,表示“现在还在武汉”,there = in Wuhan。
▲have gone to 表示“去了某地”,但当主语是第一或第二人称时,也可以表示have been to的意义。费致德《现代英语惯用法词典》(P.426)就有如下说明:
Have you ever gone (或been) to New York? 用于问人是否去过,是否有此经历。在口语里,答语常用的形式如下:
Yes, I have (gone there). I went last year.
I have already gone there.
I have gone there twice.
No, I have never been (gone) there.
如果觉得我的回答对您有用,请随意打赏。你的支持将鼓励我继续创作!
have been to 和 have gone to 及 have been in 的区别?
它们后面可不可以加for+一段时间?
解答如下:
只有have been in 后面可以与“时间段”一起连用。
(1)主语+have gone to+地点意为 “主语去了某地,现在还没有回来,可能在去的途中或已经到了目的地” 。
He has gone to Shanghai.
他到上海去了。
Her children have gone to Australia..
她孩子们去了澳大利亚。
(2)主语+ have been to+地点意为 “主语曾经去过某地,此时已回来”, 常与twice, several times, ever, never 等词连用.”
The old American man has been to China three times.
这位美国老人到过中国三次。
I have been to Dalian twice.
大连我去过两回.
I have been to New York.
我去过纽约.
(3) 主语+have been in+地点意为 “主语在某地待了多久”,后面加一段表示时间的状语.”
He has been in China for ten years.
他在中国住了十年了。
I have been in America for five years.
我在美国有五年了。
如果觉得我的回答对您有用,请随意打赏。你的支持将鼓励我继续创作!
have been to (或 in,at) 表示曾经到过某地或曾在某地方逗留过。例如:Have you ever been to New York ? 你去过纽约吗?
可能会有以下几种回答。例如:Yes, I have. I went there last year.是的,我去过。我去年去那儿的。/ No, I have never been there.没有,我从未去过那儿。 / Yes, I have been there twice.去过。我到那儿去过两次。
注:have been 与 have gone 含义不同。例如: She has been in Hong Kong. 她曾在香港住过。(现在已不住了)/ I have been at that small town for one year.我曾在那小镇住过一年。(现在已不住了) / He has gone to New York. 他已去纽约了。(其意思则相当于 He is now in New York. 他现在已在纽约。 或:He is on his way to New York.他在去纽约的途中。)
(以上摘自《薄冰英语惯用法词典》)
have been to 和 have gone to 后面不可以加for+一段时间;have been in / at 后面可以加for+一段时间。