明智地解析科学记数法?
我希望能够编写一个函数,它以科学记数法形式接收一个数字作为字符串,并将系数和指数分开作为单独的项目。我可以使用正则表达式,但传入的数字可能不会被标准化,我更愿意能够规范化然后打破这些部分。
一位同事已经使用VB6获得了解决方案的一部分,但它并不完全存在,如下面的成绩单所示。
cliVe> a = 1e6cliVe> ? "coeff: " & o.spt(a) & " exponent: " & o.ept(a)coeff: 10 exponent: 5
应该是1和6
cliVe> a = 1.1e6cliVe> ? "coeff: " & o.spt(a) & " exponent: " & o.ept(a)coeff: 1.1 exponent: 6
正确
cliVe> a = 123345.6e-7cliVe> ? "coeff: " & o.spt(a) & " exponent: " & o.ept(a)coeff: 1.233456 exponent: -2
正确
cliVe> a = -123345.6e-7cliVe> ? "coeff: " & o.spt(a) & " exponent: " & o.ept(a)coeff: 1.233456 exponent: -2
应该是-1.233456和-2
cliVe> a = -123345.6e+7cliVe> ? "coeff: " & o.spt(a) & " exponent: " & o.ept(a)coeff: 1.233456 exponent: 12
正确
有任何想法吗?顺便说一句,Clive是一个基于VBScript的CLI,可以在我的博客上找到。
海绵宝宝撒
慕仙森
绝地无双
相关分类