"I have been feeling good for the past few days. " and " I have been feeling good since yesterday." Which one is grammatically correct? And why we use "the" past few days?
For the first question, why does only one have to be correct? The first covers a period lasting a number of days and the second only one day. We could utilise many time phrases in this structure:
I have been feeling good for years
I have been feeling good since I was born
I have been feeling good every day of my life
It is a present perfect tense, and as long as the time phrase matches the tense time period of 'since then to now', the result should be OK.
The second question is about information sharing and completeness. When I say 'the fingers on my hand' the use of the article informs you and I know that there are fingers on my hand, and that I mean the whole set of fingers: not one finger, not two fingers, but all of them.
So when we say 'the past few days' we mean the complete set of 'past few days', not just some of them, and which means this time phrase matches the tense.
Do we use the phrase 'past few days' on its own? Highly unlikely, it lacks a sense of which days.