C# 使用正则表达式拆分十进制数
使用VS 2012、Windows窗体、C# 如果我有一个名为C# 使用正则表达式拆分十进制数,c#,C#,使用VS 2012、Windows窗体、C# 如果我有一个名为productPrice的decimal变量,我想把它分成两个数字,小数点左边的数字,小数点右边的数字,我需要使用的regex模式是什么 例如:如果productPrice=3.75如何将其拆分,这样我就有了一个变量3,还有一个变量.75 谢谢 您不需要正则表达式来执行此操作,您可以执行一个简单的productPrice.ToString().Split('.') 要使用这些数字,您可以执行以下操作 var price = produ
productPrice
的decimal
变量,我想把它分成两个数字,小数点左边的数字,小数点右边的数字,我需要使用的regex
模式是什么
例如:如果productPrice=3.75
如何将其拆分,这样我就有了一个变量3
,还有一个变量.75
谢谢 您不需要正则表达式来执行此操作,您可以执行一个简单的
productPrice.ToString().Split('.')
要使用这些数字,您可以执行以下操作
var price = productPrice.ToString(CultureInfo.CreateSpecificCulture("en-GB")).Split('.');
var dolars = price[0];
var cents = price[1];
您不需要正则表达式来执行此操作,您可以执行一个简单的
productPrice.ToString().Split('.')
要使用这些数字,您可以执行以下操作
var price = productPrice.ToString(CultureInfo.CreateSpecificCulture("en-GB")).Split('.');
var dolars = price[0];
var cents = price[1];
如果已具有十进制类型,则可以强制转换为整数以获得整数部分:
var intPortion = (int)productPrice;
var remainder = productPrice - intPortion;
如果已具有十进制类型,则可以强制转换为整数以获得整数部分:
var intPortion = (int)productPrice;
var remainder = productPrice - intPortion;
你知道吗,在德国的系统中,它不是一个点(
),而是一个逗号(,
)被用作十进制分隔符?当然知道。另外,您不必不必要地转换为字符串。您知道吗,在德国系统中,用作小数分隔符的不是点(
),而是逗号(,
)。另外,您不必不必要地转换为字符串。但在德国不适用;-)那么我该如何使用这些数字呢?我需要保留第二个数字的小数点,我正试图将一笔钱分成总额的美元和美分。@BackDoorNoBaby你可以使用类似productPrice.ToString(CultureInfo.InvariantCulture)。split('.')
@UweKeim在巴西也一样哈哈!但是,如果他使用productPrice.ToString(CultureInfo.CreateSpecificCulture(“en GB”)).Split('.')
-1进行字符串表示,则在德国不起作用;-)那么我该如何使用这些数字呢?我需要保留第二个数字的小数点,我正试图将一笔钱分成总额的美元和美分。@BackDoorNoBaby你可以使用类似productPrice.ToString(CultureInfo.InvariantCulture)。split('.')
@UweKeim在巴西也一样哈哈!但是如果他执行了productPrice.ToString(CultureInfo.CreateSpecificCulture(“en GB”)).Split('.')
-1来处理字符串表示。