Firstly, I think it is best to ask, "What is the difference between to regret and to apologize?"
I think that the commonest meaning of to regret is to wish that you hadn't done something in the past, or possibly to wish that you had done something in the past.
I wish that I hadn't called him an asshole.
I wish I had called him an asshole.
To apologise in this context is to later go up to him and say, "I shouldn't have called you an asshole, I was having a bad day, I misunderstood what you said etc.
Does that make sense?
So you can regret calling him an asshole, but for one reason or another, you never apologise for saying it. That is you don't go up to him and say, "I'm sorry. I shouldn't have called you an asshole."
Sometimes people apologise when they don't feel regret at all. For example they make a bad joke about someone on their own TV show, but don't feel bad about it. But then the TV company says, "If you don't apologise to that guy we are not going to run your show in the future." That sort of thing. This would be an example of hypocrisy.