c#如何获取特定的字符串

时间:2014-06-13 07:28:37

标签: c# asp.net substring string-parsing

您好我面临着获取特定字符串的问题。字符串如下:

string myPurseBalance = "Purse Balance: +0000004000 556080";

我只希望得到4000分。

4 个答案:

答案 0 :(得分:3)

如果您的字符串格式/模式已修复,那么您可以获得特定值

  string myPurseBalance = "Purse Balance: +0000004000 556080";
            //
  var newPursebal =Convert.ToDouble(myPurseBalance.Split('+')[1].Split(' ')[0]);

答案 1 :(得分:2)

您可以使用此正则表达式:

string extract = Regex.Replace(myPurseBalance, @"(.*?)\: \+[0]*(?<val>\d+) (.*)", "${val}")

它在:之后搜索小数,修剪前导0并删除最后一个空格后的所有内容。

答案 2 :(得分:1)

您可以使用string.Split获取+0000004000,然后使用string.Substring通过将Length-4作为起始索引来获取最后四个字符。

string str = myPurseBalance.Split(' ')[2];
str = str.Substring(str.Length-4);

答案 3 :(得分:1)

学习正则表达式。 Here is just simple tutorial

using System; 
using System.Text.RegularExpressions;
namespace regex
{
    class MainClass
    {
        public static void Main (string[] args)
        {
            string input = "Purse Balance: +0000504000 556080";

    // Here we call Regex.Match.
    Match match = Regex.Match(input, @"\+[0]*(\d+)",
        RegexOptions.IgnoreCase);

    // Here we check the Match instance.
    if (match.Success)
    {
        // Finally, we get the Group value and display it.
        string key = match.Groups[1].Value;
        Console.WriteLine(key);
    }
        }
    }
}