0

長い JSON 文字列から整数を抽出する簡単な方法は何ですか?

これは非常に複雑で、長い (数 KB) ため、肉眼でスキャンすることは不可能に思えます。スキップする必要があるフロートが非常に多いため、数字を抽出するだけでも良くありません。JSONをオブジェクトに変換して列挙できることは知っていますが、オブジェクト、配列、オブジェクト内の配列などが含まれている可能性があるため、これはやり過ぎのようです。

たとえば、2000 から 20000 の間の数値が必要です。実行中のプログラムの中間状態を分析するには、これが必要です。コードがこのデータを書き込んでいるだけでなく、既存の構造をスキャンすることしかできません。

4

2 に答える 2

1

最初にデータの例を見ずに答えを出すのは簡単ではありません。

JSON 文字列の形式を指定するには、「固定列形式」または「カンマ区切り」の 2 つの方法があります (実際には、「区切り」は、データの区切りを識別するための任意の繰り返し文字である可能性があります)。

どちらの場合も、JSON のデータの作成者がわかっている場合は、どのフィールドが JSON 文字列内のどのデータを表しているかを作成者に尋ねることができます。少なくとも、データが表す文字列の各部分を知ることができます。

それ以外の場合は、文字列を調べて、区切り記号、コンマ、セミコロンなど、またはその他の文字など、求める数字を定義する共通の機能を見つけるために大変な作業が始まります。これらが存在しない場合は、JSON 文字列内のパターンを見つけて、それを基に抽出を作成する必要があります。

カンマ区切り (またはその他の一般的な文字) に jquery を使用する例は次のとおりです。

var numValue = jsonResults.split(",");
numValue.each(function (index, value) {
    if (value > 1999 && value < 19999) {
        //Do whatever you want with the data
    }
}

文字列内でデータが開始および終了する行と列の位置を数え、それに基づいてモデリングを構築する必要があるため、固定列形式は困難です。内容をコピーしてテキスト ファイルに貼り付け、それをざっと見ることがその演習の始まりです。

幸運を。

于 2013-05-01T08:46:44.357 に答える