(...)
______________________________________________________________________________________
QUESTION:
ANSWER
B is strictly more correct
if you are referring to the past.
I regret not having worked harder, because now I am poor, and my children did not receive an education.
You must use A for the present
(and you can use it for the past):
I regret not working harder, because I can hardly afford my daily beer and cigarettes any more. (Present habitual)
_______________________________________________________________
(BUT) Many people, Americans especially, would use A in place of B...
source: usingenglish.com/forum