2013-08-01 2 views
2

Кто-нибудь знает, как разбирать научные номера из текстового файла с помощью lua?проанализировать научный номер из текстового файла lua

пример текстовый файл:

0,2 0,5 0,15 5.32E-05 0,5

0,2 6.32E-08 0,5

я нашел в соответствующей теме HOWTO получить номера (ниже), но с этим код видит «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 

Может кто-нибудь мне помочь?

ответ

4

Вы можете использовать шаблон чтения *n, если вы уверены, что читаете номера.

Если вы читаете файл строки за строкой, как в вашем примере кода, извлеките слова в строке с помощью %S+ и преобразуйте их в номера с tonumber.

Нижняя линия: оставьте тяжелый синтаксический анализ до tonumber.

+0

Спасибо! отлично работает! : D – zer

Смежные вопросы