您好我面临着获取特定字符串的问题。字符串如下:
string myPurseBalance = "Purse Balance: +0000004000 556080";
我只希望得到4000分。
答案 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);
}
}
}
}