正则表达式 – 如何在Matlab中打印数千个分隔符的整数?

我想使用逗号作为千位分隔符将一个数字变成一个字符串.就像是:
x = 120501231.21;
str = sprintf('%0.0f',x);

但有效果

str = '120,501,231.21'

如果内置的fprintf / sprintf无法做到这一点,那么我可以使用正则表达式,也许通过调用Java(我假设有一些基于locale的格式化程序)或基本的字符串插入操作来构建酷的解决方案.但是,我不是Matlab正则表达式中的专家,也不是从Matlab调用Java.

相关问题:How can I print a float with thousands separators in Python

在Matlab中有没有确定的方法?

使用数千个分隔符格式化数字的一种方法是调用Java语言环境感知格式化程序. “无文件Matlab”博客中的“ formatting numbers”文章解释了如何做到这一点:
>> nf = java.text.DecimalFormat;
>> str = char(nf.format(1234567.890123))

str =

1,234,567.89

其中char(…)将Java字符串转换为Matlab字符串.

瞧!

相关文章

jquery.validate使用攻略(表单校验) 目录 jquery.validate...
/\s+/g和/\s/g的区别 正则表达式/\s+/g...
自整理几个jquery.Validate验证正则: 1. 只能输入数字和字母...
this.optional(element)的用法 this.optional(element)是jqu...
jQuery.validate 表单动态验证 实际上jQuery.validate提供了...
自定义验证之这能输入数字(包括小数 负数 ) <script ...