今天在操作数据库时,需要将字符串转换成Decimal类型.代码如下: select cast('0.12' as decimal(18,2)); select convert(decimal(18,2), '0.12'); 当需要将科学计数法的数字字符串转换成Decimal时,这2种写法都报错: Msg 8114, Level 16, State 5, Line 1 Error converting data type varchar to numeric. select cast('0.12e
猜测python应该是有现成的模块可以解决该问题,不过没找到,所以自己简单写了个函数处理: def tranform(inputString): num_value = re.compile('^[0-9.]+([*|x][0-9]+)+[E|e|^][+-]?[0-9]+$') result = num_value.match(inputString) if result: temp1 = float(1) res = re.match('^[0-9.]+([*|x][0-9]+)+', in