A person that professes discrimination based on race is a racist.
What is the word for defining a person that discriminates based on culture (pretty sure it is not culturist) or social habits?
E.g., Eric Cartman doesn't like hippies, he discriminates against them. But a hippie is not a race, an ethnic, a religion or a nationality. It is a life style not related to any of these.
Best Answer
Snob is probably the word you're looking for. A more precise, but less common word might be ethnocentrist. Other possibilities: elitist, jingoist.
Snob from Merriam-Webster: "one who tends to rebuff, avoid, or ignore those regarded as inferior"
Ethnocentrist, the adjectival or noun form of ethnocentrism from the ODO: "Evaluation of other cultures according to preconceptions originating in the standards and customs of one's own culture."
Elitist from the ODO: "A person who believes that a society or system should be led by an elite."
Jingoist from Merriam-Webster: "extreme chauvinis[t] or nationalis[t] marked especially by a belligerent foreign policy."