2012-04-24 17 views
0

これは簡単な初心者の質問です。おそらく部分文字列や他のメソッドのような複雑な文字列メソッドを使ってこれを理解することができましたが、これを行うより良い方法があるかどうか疑問に思っていました。C#で部分文字列を取得していますか?

は、私はC#で文字列があるとしましょう:

string foo = "°F"; 

私は「度」と「F」を持っている二つの異なる文字列にそれを破るための最良の方法は何ですか?

私は何が起こっているかを見ます。 stackflowはHTMLを解釈していました。実際には(アンパサンド)deg(セミコロン)Fです。

ご迷惑をおかけしました。

+0

文字列のx = foo.replace( "F"、 "")について。 文字列y = foo.replace( "°" ""); – anonymous

+1

文字列を分割する基準は何ですか? ( 'String.Substring(start、length)'が複雑すぎて解決策を見つけるのが難しい場合も同様です)。 –

答えて

8

私はそれが「複雑」ですが、場合知らん:

string degree = foo[0].ToString(); 
string f = foo[1].ToString(); 

あなたがが過度に単純な例を選択したように私は感じます。あなたは本当に2文字の文字列を扱っていますか、もっと興味深いことをしようとしていますか?

更新:まあ、私はまだあなたがここでもっと何かをやろうとしているに違いないと思います。

string f = foo.Replace("°",""); 
string deg = foo.Replace("F", ""); 

それとも、何ができる:(@James Didzun帽子のヒント:):しかし、ここでもう一つの方法だ

string deg = foo.Substring(0, 5); 
string f = foo.Substring(5,1); 

または:

var deg = new string(foo.TakeWhile(c => c != 'F').ToArray()); 
var f = foo.SkipWhile(c => c != 'F').First().ToString(); 

または:

string[] x = foo.Split(';'); 
string deg = x[0] + ";"; 
string f = x[1]; 

Or:

string deg = "°" 
string f = "F"; 

個人的には、私はこの最後のアプローチを好みます。なぜあなたは文字列を分割しているのですか?

+0

私は上記の問題を更新しました。私はそれを投稿した後、私の記事を見ていないため申し訳ありません。 –

+0

私は正確な内容を知らない。それはほんの一例でした。データはWeather BugのXMLフィードからのものです。ありがとう、私は今夜これを試してみましょう。 –

1

どのようにこの:-)

char[] foo = "°F".ToCharArray(); 

char c1 = foo.First(); 
char c2 = foo.Last(); 
+0

私は上記の問題を更新しました。 –

関連する問題