Put the separator every thousands
13 ビュー (過去 30 日間)
古いコメントを表示
T=100000000;
T1 = regexprep(string(T),'(\d+)(\d{3})$',"$1'$2")
I would like to have the thousands separator for every 1000
the correct result would be:
1'000'000'000
2 件のコメント
Stephen23
2024 年 2 月 10 日
編集済み: Stephen23
2024 年 2 月 10 日
"the correct result would be: 1'000'000'000"
Why should the "correct result" be one billion when the input value is only one hundred million?
100000000 % your input value
1000000000 % your "correct result" with quotes removed
Your "correct result" is ten times larger than the input value: is that intentional or is it ... incorrect ?
採用された回答
その他の回答 (1 件)
Image Analyst
2024 年 2 月 10 日
I use the attached function I wrote. Adapt as needed, like change commas to apostrophes if you want.
2 件のコメント
Image Analyst
2024 年 2 月 11 日
@Stephen23 thanks for pointing that out. I've corrected it to properly handle cases where the input is negative or a string or a character array instead of a number (double, etc.). New code is attached.
It's definitely more lines than your one liner regexp though. However I'm not as adept with regexp as you -- I never would have figured out that cryptic sequence of regexp characters as you did.
参考
カテゴリ
Help Center および File Exchange で Characters and Strings についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!