VB.NET質問スレ(Part35)at TECHVB.NET質問スレ(Part35) - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト100:デフォルトの名無しさん 10/10/02 16:20:27 そのままのコードを生かしてみた string.formatの部分はもっとましなやり方があるかもしれない Dim n As Double = 0.0000000015 Dim reg As New System.Text.RegularExpressions.Regex("(?<1>.\.0*)\d+") Dim s As String = String.Format("{0:0.################}", n) Dim m As System.Text.RegularExpressions.Match = reg.Match(s) If (m.Success) Then System.Console.WriteLine(m.Groups("1").Value) End If 101:デフォルトの名無しさん 10/10/02 16:32:36 >>98 誰の言うことが正しいのかの判断は君に任せるが、 Decimal使えっていうのは俺はちょっと論点ずれてると思うよ。 扱う値の範囲にもよるが、普通はDoubleで問題ないし、以下のようなコードを書くべき。 Private Function SomeFunc(ByVal value As Double) As String Dim regex As New Regex("^(\d*[.]+0*)\d*$") Dim m As Match = regex.Match(value.ToString("G")) If m.Success Then Return m.Groups(1).Value Else Return "" End If End Function 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch