static bool IsPalindrome(string s){
var reverse = ReverseString(s);
return Strip(s).Equals(Strip(reverse), StringComparison.CurrentCultureIgnoreCase);
static string Strip(string s) {
return s.Replace(" ", String.Empty);
static string ReverseString(string s) {
var chars = s.ToCharArray();
return new String(chars);
static void Check(string s, bool shouldBePalindrome){
Console.WriteLine(IsPalindrome(s) == shouldBePalindrome ? "pass" : "FAIL");
public static void Main()
Check("Mr owl ate my metal worm", true);
Check("Never Odd Or Even", true);
Check("Never Even Or Odd", false);