将包含转义符的字符串转换为双字符

本文关键字:转换 字符 字符串 包含 转义 | 更新日期: 2023-09-27 18:27:01

这可能是一个愚蠢的问题,但我不知道如何解决这个问题。如何将此字符串转换为双精度:

"'"15.4'""

字符串的形式为:

"15.4"

我需要把它看作替身。有可能吗?

将包含转义符的字符串转换为双字符

首先修剪引号,然后解析字符串:

string input = "'"15.4'"";
double n = Double.Parse(input.Trim('"'), CultureInfo.InvariantCulture);

使用不变区域性意味着无论您当前的区域性设置如何,解析都使用句点作为小数分隔符。

var s = "'"15.4'"";
var d = double.Parse(s.Trim('"'));

仅当已知'"'字符位于字符串的开头或末尾时,此操作才有效。如果其他配置是可能的,那么代码必须稍微复杂一点才能处理它们。

快速简便的方法是Convert.ToDouble("15.4".Trim("))

最简单的是:

double value = Double.Parse("'"15.4'"".Trim('"'));

然而,我鼓励您查看Double.TryParse,这样您就可以测试不解析为doublestring

double value;
if(!Double.TryParse("'"15.4'"".Trim('"'), out value)) {
   // it didn't parse
}

您需要删除引号,然后对其进行解析。

var str = "'"15.4'"";
str = str.Replace("'"", "");
var num = double.Parse(str);