解析文本文件中的科学计数法数字 Lua。

有人知道如何使用lua从文本文件中解析科学计数法吗?

示例文本文件:

0.2 0.5 0.15 5.32E-05 0.5

0.2 6.32E-08 0.5

我在一个相关主题中找到了获取数字的方法(如下),但使用该代码时,它会将“5.32E-05”看作5.32和-0.5。

local tt = {}
for line in io.lines(filename) do
local t = {}
for num in line:gmatch'[-.%d]+' do
  table.insert(t, tonumber(num))
end
if #t > 0 then
  table.insert(tt, t)
end
end

有人能帮帮我吗?

点赞
用户107090
用户107090

如果你确定你要读取的是数字,那么可以使用 *n 读取模式。

如果像你示例代码一样逐行读取文件,并使用 %S+ 提取行中的单词,然后用 tonumber 将它们转换为数字。

总之,把繁重的解析任务交给 tonumber

2013-08-01 19:13:26