与Regex相处困难。
我有这个字符串:
我需要更换这个整数" 11.000000"与另一个号码。
如何识别此字符串:
在#34;%"之前给我一个字符串。直到你到达第一个空格("")?
答案 0 :(得分:1)
试试这个:
string pattern = @"^Fixed Breakeven with (\d+(\.\d+)?)% Fees$";
string input = "Fixed Breakeven with 11.0000000% Fees";
var match = Regex.Match(input, pattern);
string output = string.Empty;
if (match != null)
{
output = match.Groups[1].Value;
}
答案 1 :(得分:1)
您可以使用LINQ:
var myString = "Fixed Breakeven with 11.0000000% Fees";
var number = myString.Split('%').First().Split(' ').Last();
答案 2 :(得分:1)
您也可以尝试使用正则表达式。这是从字符串中获取小数的通用方法。它适用于所有情况。
public static bool ExtractDecimalFromString(string inputString, out Decimal decimalValue)
{
Regex regex = new Regex(@"^\D*?((-?(\d+(\.\d+)?))|(-?\.\d+)).*");
Match match = regex.Match(inputString);
decimalValue = match.Success ? Convert.ToDecimal(match.Groups[1].Value) : 0;
return match.Success;
}