public ProfanityFilterResponse ContainsProfanity(ProfanityFilterRequest request) { var response = new ProfanityFilterResponse { ContainsProfanity = false, Created = DateTime.Now }; var badwords = new[] { "ass", "ass lick", "asses", "asshole", "assholes", "asskisser", "asswipe", "balls", "bastard", "beastial", "beastiality", "beastility", "beaver", "belly whacker", "bestial", "bestiality", "bitch", "bitcher", "bitchers", "bitches", "bitchin", "bitching", "blow job", "b*****b", "blowjobs", "bonehead", "boner", "brown eye", "browneye", "browntown", "bucket c**t", "bull shit", "bullshit", "bum", "bung hole", "butch", "butt", "butt breath", "butt f****r", "butt hair", "buttface", "buttfuck", "buttfucker", "butthead", "butthole", "buttpicker", "chink", "circle jerk", "clam", "c**t", "cobia", "c**k", "cocks", "cocksuck", "cocksucked", "c********r", "cocksucking", "cocksucks", "cooter", "crap", "cum", "cummer", "cumming", "cums", "cumshot", "cunilingus", "cunillingus", "cunnilingus", "c**t", "cuntlick", "cuntlicker", "cuntlicking", "cunts", "cyberfuc", "cyberfuck", "cyberfucked", "cyberfucker", "cyberfuckers", "cyberfucking", "damn", "dick", "dike", "d***o", "dildos", "dink", "dinks", "dipshit", "dong", "douche bag", "dumbass", "dyke", "e*******e", "ejaculated", "ejaculates", "ejaculating", "ejaculatings", "e*********n" , "f*g", "fagget", "fagging", "faggit", "f****t", "faggs", "fagot", "fagots", "fags", "fart", "farted", "farting", "fartings", "farts", "farty", "fatass", "fatso", "felatio", "f******o", "fingerfuck", "fingerfucked", "fingerfucker", "fingerfuckers", "fingerfucking", "fingerfucks", "fistfuck", "fistfucked", "fistfucker", "fistfuckers" , "fistfucking", "fistfuckings", "fistfucks", "f**k", "f****d", "f****r", "fuckers", "f****n", "f*****g", "f******s", "f****e", "f***s", "fuk", "fuks", "furburger", "g******g", "gangbanged", "gangbangs", "gaysex", "gazongers", "goddamn", "gonads", "gook", "guinne", "hard on", "hardcoresex", "h**o", "hooker", "horniest", "horny", "hotsex", "hussy", "jack off", "jackass", "jacking off", "jackoff", "jack-off", "jap" , "jerk", "jerk-off", "jism", "j*z", "jizm", "j**z", "kike", "kock", "kondum", "kondums", "kraut", "kum", "kummer", "kumming", "kums", "kunilingus", "lesbian", "lesbo", "merde", "mick", "mothafuck", "m********a", "mothafuckas", "mothafuckaz", "mothafucked", "mothafucker", "mothafuckers", "mothafuckin", "mothafucking", "mothafuckings", "mothafucks", "motherfuck", "motherfucked", "m**********r", "motherfuckers", "motherfuckin", "motherfucking", "motherfuckings", "motherfucks", "muff", "nigger", "niggers", "orgasim", "orgasims", "o****m", "o*****s", "pecker", "penis", "phonesex", "phuk", "phuked", "phuking", "phukked", "phukking", "phuks", "phuq", "pimp", "piss", "pissed", "pissrr", "pissers", "pisses", "pissin", "pissing", "pissoff", "prick", "pricks", "pussies", "pussy", "pussys", "queer", "retard", "schlong", "screw", "sheister", "shit", "shited", "shitfull", "shiting", "shitings", "shits", "s*****d", "shitter", "shitters", "s******g", "s*******s", "shitty", "slag", "sleaze", "s**t", "s***s", "smut", "snatch", "spunk", "twat", "wetback", "w***e", "wop" }; if (request.Text.Split(' ').Intersect(badwords).Count() > 0) { response.ContainsProfanity = true; } return(response); }
private static ProfanityFilterResponse CreateProfanityFilterResponseFromXml(string xml) { var xmlresponse = XDocument.Parse(xml); var count = (xmlresponse.Elements("rsp").Select(x => x.Element("found").Value)).FirstOrDefault(); var expletives = (from x in xmlresponse.Descendants("expletive") select x.Value).ToArray(); var response = new ProfanityFilterResponse { Count = int.Parse(count), Expletives = expletives, Success = true, ContainsProfanity = int.Parse(count) > 0 ? true : false }; response.Result = string.Format("count = {0}; expletives = '{1}'", response.Count, string.Join(", ", response.Expletives)); return(response); }
public ProfanityFilterResponse ContainsProfanity(ProfanityFilterRequest request) { ProfanityFilterResponse response; try { var x = _profanityFilterService.Check(request) as string; response = CreateProfanityFilterResponseFromXml(x); } catch (System.Exception e) { response = new ProfanityFilterResponse { Success = false, Error = e.ToString() }; response.Success = false; } return(response); }