我学英语很多年了,这句话英语怎么说?

比如别人问你how many years do you learn english? 我该怎么回! 其实我就是分不清用完成时还是过去时,感觉都可以的,不知道是不是受中文的干扰,完成时和过去时总是傻傻不清!我觉得我回i have learned english for many years.或者i learned english many years.感觉都可以。有没有谁可以帮我分析一下,可以跳出这个例子,有时候在跟外国人聊天,总在犹豫该用过去还是完成时,全面分析下我这个问题所在。不要复制粘贴哦

I have been learning English for many years.听起来正常一些,表示学了很多年,并且现在还在学习。

I have learnt 表示已经学会了,学到了,学完了。
I learned 表示学过,不能加for many years,除非你表达的事已经完全结束。比如,你想说你曾经学过几年英文,现在没学了:I studied/learned Englsih for five years when I was young.

补充一下,你quote的这个外国人的提问句有点不太通顺,语法上要改一改How many years have you been learning English? 或How many years did you studied English before?前者表示你还在学,后者表示问你曾经学过多少年,潜在意思是你现在没学了。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-09-21
I have been learning English for many years. 过去时强调动作已经截止,表示过去某一具体时间发生的动作或存在状态;完成时强调已经完成的动作对现在的影响。
你这句话最好用现在完成进行时,因为你学习英语的动作还没停止,还会继续下去,你说是吧。当然,用现在完成时也是可以的。不同时态表达的意思不太相同
第2个回答  2014-09-21
现在完成时表示一个过去发生并且已经结束的动作对现在产生的影响和结果。过去时是表示过去发生并且已经结束的动作,区别是对现在没有影响。
例如:我昨天去上海了。I got to Shanghai yesterday.
我在上海住三年了。I have been in Shanghai for three years.
那你要表达我学英语很多年了,那是对现在有影响的,应该用完成时,说明你还在学。
注意:一些现完的时间状语for~years,since~years ago,never,yet,
第3个回答  2014-09-21
如果是为了应付考试你需要加以区分,完成时表示学过现在还在学,过去式是过去学了现在可能在学也可能没学了(没学可能性大)。你跟外国人聊天没人会在意你用什么时态,你说的两种外国人都能明白意思。
第4个回答  推荐于2018-07-13
可以翻译成: I've been learning English for many years。
learning 英[ˈlɜ:nɪŋ] 美[ˈlɜ:rnɪŋ]
n. 学问,学术,知识;
v. (learn的现在分词) 学习;

year 英[jɪə(r)] 美[jɪr]
n. 年; 年纪; 一年的期间; 某年级的学生;
[例句]We had an election last year.
去年我们进行了一次选举。本回答被网友采纳