MENU

【Flutter】小数が0の場合に整数で表示するには(例:100.0 → 100)?

記事内に商品プロモーションが含まれる場合があります

小数点以下が全て0であればreplaceAllを使って削除します。

RegExp reg = RegExp(r'\.0+$');

print('100.0'.replaceAll(reg, '')); // 100
目次

正規表現の解説

  • \.: ピリオド(小数点)をエスケープした文字です。ピリオドは正規表現において特別な意味を持つため、通常の文字として扱いたい場合にエスケープします。
  • 0+: 数字 “0” が 1 回以上繰り返されるパターンです。つまり、小数点以下が “0” で終わる場合にマッチします。
  • $: 行末を示すアンカーです。この正規表現では、文字列全体の末尾にマッチするようになっています。

したがって、RegExp(r'\.0+$') は、文字列の末尾が “0” で終わる場合にその部分にマッチします。これを replaceAll メソッドで空文字列に置き換えることで、その部分を削除する効果があります。

例えば、123.45000 の場合、この正規表現は “000” にマッチし、それを空文字列に置き換えることで 123.45 に変換されます。

Flutterが学べる書籍

Share

Comment

コメントする

目次