朱莉娅:如何将带有幂符号“ ^”的数字字符串转换为浮点数

1 julia

我在将数字字符串数组转换为相应的浮点数数组时遇到麻烦。(假设的)字符串数组是:

arr = ["8264.", "7.1050^-7", "9970.", "2.1090^-6", "5.2378^-7"]
Run Code Online (Sandbox Code Playgroud)

我想将其转换为:

arr = [8264., 1.0940859076672388e-6, 9970., 0.011364243260505457, 9.246079446497013e-6]
Run Code Online (Sandbox Code Playgroud)

作为Julia的新手,我不知道如何使字符串格式的幂运算符“ ^”在转换中完成正确的工作。非常感谢您的建议!

小智 5

此函数将解析两种形式,而没有指数。

function foo(s)
    a=parse.(Float64,split(s,'^'))
    length(a)>1 && return a[1]^a[2]
    a[1]
end
Run Code Online (Sandbox Code Playgroud)