One thing I do occasionally with Ezekiel is practice how he would handle someone he just met saying something rude to him.
A key point is realizing that people will say things about you, it doesn't make them true. The only thing that matters is what you believe about yourself.
I'll say it again, people will say things about you, IT DOESN'T MAKE IT TRUE.
In knowing that, it takes the power out the sentiment. It takes away the need for a reaction. It takes away the need to take it personal. It is essential for me to encourage a foundation of positive self esteem in my children from birth, and also let them know that they are not the sum of other people's opinions of them.
So, we practice.
Me: "Hey, Ezekiel, I'm a kid you just met on the play ground."
Ezekiel: "Okay, hi, I'm Ezekiel!"
Me: "You have weird hair....why is your hair pink?"
Ezekiel: "oh, well, I like it. It's a haircut and I like pink, so....do you wanna play with me?"
And it diminishes into no big deal in an instant.
His response have varied from "Well, people can have whatever hair they want to have, so..." to "Well, I like it, so fuck off." If I was being extra mean about something.
And if you stopped reading and dismissed the entire post at a four year old saying "the f word," or that you wouldn't tolerate a kid on the playground saying it to your child, but would tolerate your kid being rude, I'm not sorry about it. We enjoy freedom of expression around here and also that the children don't, in fact, have to be nice to people that verbally berate them.
Anyway, the point is, people say words and a lot of the time they have no meaning or are regurgitated things their parents unconsciously say about strangers, but they only have as much power as you give them. Know yourself, take nothing personal and be awesome.