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]", "");

現在のパターンは、後に1つ以上の文字が続く\r\n+場合にのみ一致するため、たとえば、他のスタンドアロン文字とは一致しません。\r\n\r

于 2012-08-22T14:53:39.137 に答える