0

float 値のパターンのヘルプが必要です。

私が持っている文字列:

[[-307.,16.01,-171.31],[0.84528,-0.503623,-0.142485,-0.107531],[-1,-2,1,1],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]], [[-306.43,24.47,-176],[0.845282,-0.503624,-0.142472,-0.107528],[-1,-2,1,1],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]]

私が使用しているパターン:

\s*[-+]?([0-9]*\.)?[0-9]*([eE][-+]?[0-9]+)?\s*

テキスト全体を認識できるようにするには、パターンをどのように変更する必要がありますか。
現在、この長い文字列の一部である [306.43,24.47,-176] に問題があります。
このパターンにどのような変更を加える必要があるか。

4

2 に答える 2

2

正規表現は必要ありません。JavaScriptSerializerを使用できます

var list = new JavaScriptSerializer()
                .Deserialize<List<List<List<Double>>>>("[" + yourstr + "]");
于 2012-04-09T14:30:20.953 に答える
0

小数点以下の + または * が欠落しているようです。

\s*[-+]?([0-9].)?[0-9]+([eE][-+]?[0-9]+)?\s*
于 2012-04-09T14:19:05.873 に答える