/// <summary> /// Init word /// </summary> public static void Init() { _filter = new BadWordsFilter(); var cacheSet = new ShareCacheStruct <SensitiveWord>(); cacheSet.Foreach((k, v) => { _filter.AddKey(v.Word); return(true); }); }
public void Test_Filter_Entries_With_Bad_Words() { var peter = new Contact("Peter"); var jhon = new Contact("John"); var mary = new Contact("Mary"); var fb = new SocialNetwork("facebook"); var tw = new SocialNetwork("twitter"); var ins = new SocialNetwork("instagram"); var badTags = new List <string>() { "#deadCode", "#complexCode", "#copy-n-paste", "#shortCode" }; var goodTags = new List <string>() { "#shortCode", "#simpleCode", "#2nestedLevelsMax" }; IEnumerable <Entry> entries = new List <Entry>() { new Entry("a", "second dead code", peter, DateTime.Now.AddHours(-2), badTags, fb), new Entry("b", "third 2000LOC functions", jhon, DateTime.Now.AddHours(-3), badTags, tw), new Entry("c", "first Clean Code! Really?", mary, DateTime.Now.AddHours(-1), badTags, ins), new Entry("d", "first Clean Code!!!", mary, DateTime.Now.AddHours(-1), goodTags, ins) }; SocialNetworkPullCollector returnAllCollector = new ReturnAllPullCollector(entries); EntriesFilter filter = new BadWordsFilter("nestedLoops,deadCode,copy-n-paste".Split(',')); SocialNetworksHub hub = new CleanSocialNetworksHub(); hub.AddCollector(returnAllCollector); hub.AddFilter(filter); DateTime since = DateTime.Now.AddHours(-4); IEnumerable <Entry> hubEntries = hub.GetEntriesSince(since); Assert.AreEqual(1, hubEntries.Count()); var cleanEntry = hubEntries.First(); Assert.AreEqual("first Clean Code!!!", cleanEntry.Text); }
protected void btnSubmit_Click(object sender, EventArgs e) { IPManager manager = new IPManager();//查看IP是否用得频繁 string IPAddress = manager.GetClientIPv4Address(); XmlManager xmanager = new XmlManager(); int ans = xmanager.Editor(IPAddress); if (ans > 0) { if (ans == 1) { xmanager.Add(IPAddress); //如果没有这个IP,就加入记录 BadWordsFilter badwordfilter = new BadWordsFilter(); //在此处对comment进行脏字处理 //初始化关键字 badwordfilter.Init(); //检查是否有存在关键字 bool a = badwordfilter.HasBadWord(textarea1.Value.Trim()); if (a == false) { string comment = textarea1.Value; if (txtCode.Text == Session["CheckCode1"].ToString()) { string time = DateTime.Now.ToString(); string photoUrl = "images/p1.png"; //获取的对应图片信息 if (photoIndex.Text == "0") { photoUrl = "images/p1.png"; } if (photoIndex.Text == "1") { photoUrl = "images/p2.png"; } if (photoIndex.Text == "2") { photoUrl = "images/p3.png"; } if (photoIndex.Text == "3") { photoUrl = "images/p4.png"; } if (photoIndex.Text == "4") { photoUrl = "images/p5.png"; } if (photoIndex.Text == "5") { photoUrl = "images/p6.png"; } if (photoIndex.Text == "6") { photoUrl = "images/p7.png"; } if (photoIndex.Text == "7") { photoUrl = "images/p8.png"; } if (photoIndex.Text == "8") { photoUrl = "images/p9.png"; } using (var db = new ITShowEntities()) { Message message = new Message(); message.MessageContent = comment; message.MessageTime = Convert.ToDateTime(time); message.MessagePhoto = photoUrl; db.Message.Add(message); db.SaveChanges(); Response.Write("<script>alert('留言成功!');location='Comments.aspx'</script>"); } } else { Response.Write("<script>alert('验证码错误!');location='Comments.aspx'</script>"); } } else { Response.Write("<script>alert('留言中有不合法的内容')</script>"); } } else { Response.Write("<script>alert('操作过于频繁,请10秒后再操作')</script>"); } } else { Response.Write("<script>alert('操作失败请重试')</script>"); } }
private bool FilterBadWords(string message) { BadWordsFilter filter = new BadWordsFilter(System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "badworlds.txt")); return(filter.HasBadWord(message)); }
/// <summary> /// Init word /// </summary> public static void Init() { _filter = new BadWordsFilter(); var cacheSet = new ShareCacheStruct<SensitiveWord>(); cacheSet.Foreach((k, v) => { _filter.AddKey(v.Word); return true; }); }
private SensitiveFilterManager() { badWorldFilter = new BadWordsFilter(); loadFromConfig(); }
public SensitiveWordModel() { badWorldFilter = new BadWordsFilter(); }