2010-12-17 9 views
0

URLエンコードされた認証サーバーからの応答を解析しようとしています。しかし、私はそれを行うときに\ r \ n文字を取得しています。空白を探す正規表現を実行する必要があるが、これらのエスケープ文字では動作しないようにするためには、これらを私のテキストに入れないでください。私は面白い%記号を取得する方法は、私はそれらを取り除くのですか?

だから基本的に返される文字列は次のとおりです。URLの後に

ClientIP=192.168.20.31%0d%0aUrl%3d%2fflash%2f56553550_hi%3funiqueReference%3d27809666.mp4 

はそれがそれをデコード:

192.168.20.31\r\nUrl=/flash/56553550_hi?uniqueReference=27809666.mp4 

は、だから、私はそれを持っているしたくない参照\ rを\ n個など私が持っていたいです:

"192.168.20.31 Url=/flash/56553550_hi?uniqueReference=27809666.mp4" 

C#の逐語的な文字列です。

これは可能ですか?または、私はstring.replaceを\ rで行い、 ""と置き換えなければなりませんか?

答えて

3

%0d%0a%20に置き換えるか、文字列のURLをデコードする前に\r\nと置き換えてください。

元の文字列にデータが存在するため、置換せずに元に戻すことはできません。

+0

これを行うよりエレガントな方法はありませんか? – Exitos

+0

@ Pete2k - そうではありません。 RegExを使って同じことをすることもできますが、それはさらに複雑です。 – Oded

+0

申し訳ありません。なぜ、認証サーバーが最初に%0d%0aを使用し、%20を使用していないのでしょうか。私はあなたの応答に感謝します:-) – Exitos

関連する問題