我刚刚“完成”扩展我的Palindrome测试仪,用C#制作。为了允许短语,我为所有非字母数字字符添加了一个简单的正则表达式匹配。在该计划结束时,它表示“是(不是)回文。”但现在使用正则表达式打印它的无空格/标点符号版本。
我希望能够打印原始用户输入。我该怎么做?
答案 0 :(得分:1)
ToLower()
本身不会做任何事情。字符串是不可变的,这意味着修改字符串实例是不可能的。 ToLower()
函数返回一个新字符串,因此您必须将该值存储在变量中(相同或新的变量)。像这样:
public static string Tester(string input)
{
string pattern = "\\W";
string data = Regex.Replace(input.ToLower(), pattern, String.Empty);
if (data == StringHelper.ReverseString(data))
{
Console.Write(input); Console.Write(" is a Palindrome.");
}
else
{
Console.Write(input); Console.Write(" isn't a Palindrome.");
}
return input;
}