regex - 使用 Notepad++ 中的正则表达式将科学记数法转换为文本或整数

标签 regex notepad++ scientific-notation

我正在寻找将科学记数法数字转换为完整整数。

例如:

8.18234E+11 => 818234011668

Excel 重新格式化了 csv 中的所有 upc 代码和 this解决方案对我不起作用。

我在 Notepad++ 中打开了 csv,并且很乐意使用正则表达式查找和替换来执行此操作。

谢谢。

最佳答案

损坏已经造成,无法从 CSV 文件中恢复。 8.18234E+11 可以是从 818233500000818234499999 的任何内容*。

为了防止 Excel 对大数字进行四舍五入,您需要将它们存储为文本。如果将单元格格式设置为文本,则从那时起插入的任何值都应自动解释为文本。在 OpenOffice Calc(我没有 MS Excel)中,您还可以在数值前加上 ' 前缀,以将其解释为文本,无论单元格格式如何。

正确的值有可能存储在原始 XLS(或 XSLX 或 ODS 或实时 Excel session 或...)文件中。如果没有,那么您将必须再次输入数据。如果存在数据,您需要将其存储为文本或增加导出的 CSV 中的有效位数。如果您只有导出的数据,那么您就不走运了。

*UPC 有一个校验位,因此 1 000 000 个代码中只有 100 000 个实际上是有效的 UPC 代码。

关于regex - 使用 Notepad++ 中的正则表达式将科学记数法转换为文本或整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13727038/

相关文章:

python - Python 中的 options(scipen=999) 相当于什么

javascript - 将字符串(Revit 公式)转换为 JavaScript 对象

java - 正则表达式不起作用,应该如何制定?

notepad++ 导出内置语言

Notepad++ 在每行添加数字

javascript - 如何将数字转换为科学记数法?

regex - 正则表达式获取用方括号或引号括起来的常量字符串

html - 如果位于特定标签内,则删除特定标签

regex - 使用 REGEX 查找包装内容中的换行符

java - 什么是科学记数法以及为什么在 Java 中科学记数法要重复打印?