码迷,mamicode.com
首页 > 其他好文 > 详细

Regex Failure - Bug Fixing #2

时间:2015-12-18 10:23:37      阅读:120      评论:0      收藏:0      [点我收藏+]

标签:

http://www.codewars.com/kata/55c423ecf847fbcba100002b/train/csharp

Oh no, Timmy‘s received some hate mail recently but he knows better. Help timmy fix his regex filter so he can be awesome again!

using System;
using NUnit.Framework;
System.Text.RegularExpressions

[TestFixture]
public class Tests
{
  [Test]
  public static void FixedTest()
  {
    Assert.AreEqual("You‘re awesome! timmy!", Kata.filterWords("You‘re Bad! timmy!"));
    Assert.AreEqual("You‘re awesome! timmy!", Kata.filterWords("You‘re MEAN! timmy!"));
    Assert.AreEqual("You‘re awesome!! timmy!", Kata.filterWords("You‘re UGLY!! timmy!"));
    Assert.AreEqual("You‘re awesome! timmy!", Kata.filterWords("You‘re horrible! timmy!"));
    Assert.AreEqual("You‘re awesome!! timmy!", Kata.filterWords("You‘re HiDeOuS!! timmy!"));
    Assert.AreEqual("You‘re awesomeish!! timmy!", Kata.filterWords("You‘re Meanish!! timmy!"));
  }
}

 

主要是i的用法,

 

i

Use case-insensitive matching.

\b(?i)a(?-i)a\w+\b

"aardvark", "aaaAuto" in "aardvark AAAuto aaaAuto Adam breakfast"

 

using System;
using System.Text.RegularExpressions;

public class Kata
{
  public static string filterWords(string phrase)
  {
      string pattern = @"(?i)bad|mean|ugly|horrible|hideous\b";
      string replacement = "awesome";
      Regex rgx = new Regex(pattern);
      return rgx.Replace(phrase, replacement);
  }
}

 

Regex Failure - Bug Fixing #2

标签:

原文地址:http://www.cnblogs.com/chucklu/p/5056166.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!