问题标签 [number-formatting]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 如何检查用户输入的数字中逗号的正确位置?
我正在寻找一种检查用户输入的数字以确保可选逗号的正确位置的好方法。
例如
所以看起来我需要检查逗号左边至少有一个数字,逗号右边有 3 个数字,还是有 RegEx 方法来做到这一点?
objective-c - 如何很好地打印浮点值?
例子:
我有一个浮点值,例如 1294322.0000000,我想在标签中打印出来,如下所示:
1.294.322
因此,在每千个位置之间的一个点。我打赌你知道我的意思。不知道确切的英文单词。
或者,例如,我有一个像这样的浮点数:15.29,那么它应该看起来像“15,29”。
或者像 1422 这样的浮点数,应该看起来像 1.422
如果“,”之后没有浮点精度,我不想打印它。例如:
4.311 是正确的,但不想要 4.311,00。
是否有有用的类可以帮助解决objective-c/iphone sdk/cocoa touch中的这个数字格式问题?
iphone - 为什么我的 NSNumberFormatter 对象为输入 1.0 打印“2”?
这看起来像 API 中的一个错误:
当我的输入 CGFloat 为 0.0 时,我得到这个:
当我的输入 CGFloat 为 1.0 时,我得到这个:
显然这不是我想要的;-)
现在这是我创建 NSNumberFormatter 对象的方法:
这就是我让它格式化 1.0f 的 CGFloat 的方式:
可能是 roundingMode 这里的问题?我应该指定哪个?或者这种奇怪行为还有其他原因吗?
shell - 用给定文本行中的货币格式替换所有数字
我想编写一个 Shell(AWK,Sed 也可以)程序,将单行文本作为输入。
这将在其中任意传播整数字符串。例如
“12884 和 111933 是两个数字,323232 也是一个数字”
我希望输出是
“12,884 和 1,11,933 是两个数字,而 2,23,232 也是一个数字”
如果这是 PHP,一个简单的 preg_replace_callback 就可以达到目的,但我希望它在 shell 中。:/
任何指针都会有很大帮助。
excel - Excel 范围格式:设置 Range::Value2 时自动格式化数字
我有一个用 C# 编写的 Excel 插件,可将文本文件导入 Excel 工作表。文件中的一些字段是文本和一些粗略的数字。
问题步骤:
- 将系统的区域设置更改为荷兰语(比利时)
- 打开 Excel 并将文件导入 Excel。记录包含诸如 78,1118 之类的值,这些值将转换为 781.118。请注意,在荷兰语(比利时)中,COMMA 是十进制字符,DOT 是千位字符。
我不需要自动格式化数字,但只想显示我从文件中得到的任何内容(78,1118)。如果我将单元格的 NumberFormat 设置为“ @ ”即文本,那么它会显示一个错误(SmartTag),说明“数字存储为文本”。我知道我可以通过转到“选项”框来更改设置,但我不想为此更改 Excel 中的任何用户选项。我尝试使用“'”(撇号)设置单元格的 Value2,但显示相同的错误。如果我在设置值之后将单元格的格式设置为其他格式,那么实际值会发生变化,并且我会丢失小数点。
Excel中有没有办法只显示值而不在单元格中显示“数字存储为文本”错误?
matlab - 我如何从 1.4795e+004 转到 14795.00?
这个问题困扰了我好久..我想改变数字的格式..不知道怎么做?我已经尝试了帮助文件,但找不到答案..如果你能帮助我,请做..
java - Java:将双精度数转换为字符串
我有一个 double,其值为 10,000,000.00(一千万)。我必须将其转换为String
. 使用该方法toString
时,我得到了String
符合规范的“1.0E7”。不幸的是,我需要String
“10,000,000.00”(或等价的,取决于语言环境)。
怎样才能做到这一点?
c# - 没有科学记数法的双精度字符串转换
如何在 .NET Framework 中将 double 转换为没有科学记数法的浮点字符串表示形式?
“小”样本(有效数字可以是任何大小,例如1.5E200
或1e-200
):
没有一个标准数字格式是这样的,自定义格式似乎也不允许在小数点分隔符后有一个开放的位数。
这不是How to convert double to string without the power to 10 representation (E-05)的副本,因为那里给出的答案并不能解决手头的问题。这个问题中公认的解决方案是使用一个固定点(例如 20 位),这不是我想要的。定点格式化和修剪多余的 0 也不能解决问题,因为固定宽度的最大宽度是 99 个字符。
注意:解决方案必须正确处理自定义数字格式(例如,其他小数分隔符,取决于文化信息)。
编辑:这个问题实际上只是关于取代上述数字。我知道浮点数是如何工作的,以及可以使用和计算哪些数字。
.net - 将逗号千位分隔符添加到十进制 (.net)
我有一个十进制数,比如 1234.500。
我想将其显示为 1,234.5。
我目前正在将其转换为双精度以删除尾随的 '0'。
string.Format("{0:0,0}",1234.500)
删除小数位,其他格式选项似乎使用两位小数。
任何人都可以提供见解吗?
java - Javas DecimalFormat:如何拒绝带有分组小数的“无效”输入?
使用以下 NumberFormat 时:
通过解析时我得到以下结果
- 10,50 => 1050
- 10,5 => 105
- 0,25 => 25
我知道在 Locale.ENGLISH 中,“,”是组分隔符。但我认为上述结果没有意义。我们的客户对这种格式感到奇怪。
如何禁用此分组?
我想得到以下结果:
- 10,50 => ParseException
- 10,5 => 解析异常
- 0,25 => ParseException
有没有标准的方法来做到这一点?还是我必须编写自己的 NumberFormat?