我有这个字符串,我需要分多种方式。
Pending order
Sell EUR/USD
Price 1.0899
Take profit at 1.0872
Stop loss at 1.0922
From 23:39 18-01-2016 GMT Till 03:39 19-01-2016 GMT
这是我需要将其拆分为
的完整字符串string SellorBuy = "Sell";
string Price = "1.0889";
string Profit = "1.0872";
string StopLoss = "1.0922";
数字每次都不同但我仍然需要将它们分成自己的字符串。我不知道该怎么做。任何帮助将不胜感激!
我尝试了什么
string message = messager.TextBody;
message.Replace(Environment.NewLine, "|");
string[] Spliter;
char delimiter = '|';
Spliter = message.Split(delimiter);
似乎没有添加“|”它。
答案 0 :(得分:1)
在换行符上拆分字符串,然后根据该行的第一个单词处理每一行。有关在此处拆分换行符的更多信息... https://stackoverflow.com/a/1547483/4322803
// Split the string on newlines
string[] lines = theText.Split(new string[] { Environment.NewLine }, StringSplitOptions.None);
// Process each line
foreach(var line in lines){
var words = line.Split(' ');
var firstWord = parts[0];
switch (firstWord){
case "Price":
Price = words[1];
break;
case "Take":
Profit = words[words.Length - 1];
break;
// etc
}
}
上面的代码真的只是为了让你入门。您应该创建一个名为PendingOrder
的类,其中Price
,Profit
等具有强类型属性(例如,对于数字而不是字符串使用float
或decimal
)并通过构造函数传递原始文本以填充属性。