Daily programming #0022

言語処理100本ノック 2015の#20をやっていく。

第3章: 正規表現の前提

Wikipediaの記事を以下のフォーマットで書き出したファイルjawiki-country.json.gzがある.

1行に1記事の情報がJSON形式で格納される 各行には記事名が"title"キーに,記事本文が"text"キーの辞書オブジェクトに格納され,そのオブジェクトがJSON形式で書き出される ファイル全体はgzipで圧縮される 以下の処理を行うプログラムを作成せよ.

JSONファイルの容量が大きく、glot.ioで実行する際に非常に時間がかかるため、「イギリス」に関する記事のみのJSONファイルを使用する。

20. JSONデータの読み込み [Golang]

Question

Wikipedia記事のJSONファイルを読み込み,「イギリス」に関する記事本文を表示せよ.問題21-29では,ここで抽出した記事本文に対して実行せよ.

Code

100knock #20

json.Unmarshalで処理すれば簡単でしょと思って書いて、実行したらinvalid character '{' after top-level valueがでるし、 JSONだと1行分の長さが長すぎてbufio.Scannerが途中で読み込みやめてしまうしいろいろ気づきがある問題だった。

上記問題で参考にしたのは以下の記事

結局先人の解答をほぼそのまま丸写しする形になった。