「313397E9」などの8桁の文字列がExcelに渡され、数値「313397000000000」または「3.133970e+014」として読み取られるという問題があります。
これはMatlabによって読み取られ、文字列ではなく数値として認識されます。それを8桁の文字列に戻す最も簡単な方法は何でしょうか?
よろしくお願いします。
「313397E9」などの8桁の文字列がExcelに渡され、数値「313397000000000」または「3.133970e+014」として読み取られるという問題があります。
これはMatlabによって読み取られ、文字列ではなく数値として認識されます。それを8桁の文字列に戻す最も簡単な方法は何でしょうか?
よろしくお願いします。
救助のための正規表現!REGEXPREPを使用して、末尾のゼロをExに変換できます。ここで、xは置き換えたばかりのゼロの数です。
%# convert the number to a string
nn = num2str(3.133970e+014)
nn =
313397000000000
%# replace zeros using regexprep
regexprep(nn,'([0]*)','E${num2str(length($1))}')
ans =
313397E9
これnn
は、が文字列のセル配列である場合にも機能するため、数値のリストを一度に変換できます。