Python(英文のデータベース化001: 作成イメージ)
■英文の文章をばらし、データベース化するアプリケーションについて考えてみる。
仕事がら英文を扱うことがあるので、その中で触れた英文を後から参照できるようデータベース化したい。
おおまかな流れとしては、文章ファイルを読み込み、文章を文にばらし、その文を単語にばらす。その文、単語をデータベースに入れる。
下記の文章(英検 準1級2010年第1回より抜粋)を例にすると、下の表のようになる。
With sea levels expected to rise between 20 and 90 centimeters over the next century, those involved in urban development will face significant obstacles. Low-lying areas will be submerged and flood zones will expand, meaning the land available for development will decrease. At the same time, the human population will continue to grow. So what can be done to tackle these conflicting issues?
英文ID | カテゴリー | 文 | 備考 |
1 | 英検 | With sea levels expected to rise between 20 and 90 centimeters over the next century, those involved in urban development will face significant obstacles. | |
2 | 英検 | Low-lying areas will be submerged and flood zones will expand, meaning the land available for development will decrease. | |
3 | 英検 | At the same time, the human population will continue to grow. | |
4 | 英検 | So what can be done to tackle these conflicting issues? |
ID | 単語 | 英文ID001 | 英文ID001_意味 | 英文ID002 | 英文ID002_意味 | ... | 英文ID100 | 英文ID100_意味 | 備考 |
1 | sea | 1 | 海 | ||||||
2 | level | 1 | |||||||
... |
単語から英文への紐づけは100くらいまで用意するつもりだけど、the, what, is, 数値など、一般的に出てくるような単語は外さないとすぐにいっぱいになりそう。それとも、難しい単語や珍しい単語の使用例に絞ろうかな。
入力ファイルはテキストファイルから始める。
文章や文をばらす部分はPythonで実施。ばらす時には、ピリオドやコロン、クエスションマークで区切るなどルールが必要になるけど、コードを試しながら考える。また、単語にばらす時にも、単にスペース区切りとするのではなく、複合語はそのまま入れておきたい。あと、読み込んだ文章の単語とそれらの数を見ておきたい(データベース保存ではなく)。
データベースは、どれがいいか分からないけど、とりあえずPythonから扱いやすいものを使うつもり。
とりあえず作ってみて、足りない部分は後からアップデートしよう。