0

这是一个简单的新手问题。我可能可以使用一些复杂的字符串方法(如子字符串和其他方法)来解决这个问题,但我想知道是否有更好的方法来做到这一点。

假设我在 C# 中有一个字符串:

string foo = "°F";

将它分成两个不同的字符串的最佳方法是什么,我有“deg”和“F”?

我明白发生了什么。stackflow 正在解释 HTML。它实际上是(和号)度(分号)F。

对不起各位,我昨晚发的时候已经晚了。

4

2 回答 2

8

我不知道它是否“复杂”,但是:

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

我觉得你选择了一个过于简单的例子。您是真的在处理两个字符串,还是在尝试做一些更有趣的事情?

更新:好吧,我仍然认为您必须在这里尝试做一些更难的事情。但这是另一种方式:(帽子提示:@James Didzun)

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

或者你可以这样做:

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];

或者:

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

就个人而言,我更喜欢最后一种方法。为什么要拆分一个您知道其确切内容的字符串?

于 2012-04-24T02:09:18.523 回答
1

这个怎么样 :-)

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

char c1 = foo.First();
char c2 = foo.Last();
于 2012-04-24T04:42:53.300 回答