不可以,had用在这里就表示这本书你已经拥有两个星期了,和原意不符!
had 是拥有了着本书,kept是暂时的保管,你要该了的话就和原来的汉语的意思不同了,如果说是口语化的话,那样说也没什么错误,着只是习惯罢了.
你看吧,是在正式的文中还是非正式的,正式的就kept非正式的就had,不过我个人认为那样就有写牵强附会了
语法上应该没错,但用keep更准确些,可以表示出是借阅的意思,用have had容易让人误解为这本书本来就是自己的.
如果你填have had的话,就是“买了这书有两个星期了”,而不是“借这书已经两个星期了”
用kept 比用had 表达更加准确,因为书是借的,要归还。但是我认为当要求不是很严格时,had 也同样可以用。