2

我要清理的字符串看起来像

"\r\nPasswordchanged?\r\r\n"    string

我用了这个方法

public string[] cleanStrings(string[] clean)
    {
        int j = 0;
        foreach (string data in clean)
        {
            string temp = System.Text.RegularExpressions.Regex.Replace(data, @"\r\n+", "");
            if (temp.Equals(" "))
            {
                temp = "";
            }
            clean[j] = temp;
            j++;
        }
        return clean;
    }

结果是

"Passwordchanged?\r"    string

我以为我的正则表达式会删除所有\r\n

我错过了什么?

4

1 回答 1

5

请改用字符类,特别是[\r\n]. 这样,字符类中的任何字符都将匹配。

string result = Regex.Replace(data, @"[\r\n]", "");

您当前的模式 ,\r\n+将仅匹配 an\r后跟一个或多个\n字符,因此它无法匹配\r例如其他独立字符。

于 2012-08-22T14:53:39.137 回答