知の揺籃

Access Count = 2664
since 2020.Jan.

Update : 2020.02.27.thu.


Update : 2020.02.26.wed.

 下記は、指定したフォルダ内の、ファイルタイプ名が、.txtか.TXTのファイルを対象にしてコンバート処理を実行します。
 プレーンなテキストファイルが対象です。

Update : 2020.05.12.tue.

私見
に、
民主主義・主権在民、を守るために
を掲載しました。

Update : 2020.03.17.tue.

Haskell言語初心者の部屋
に、
リストの全データを処理する関数
を追加しました。

Update : 2020.02.13.thu.

Haskell言語初級者の部屋
に、
パターンマッチングについて
を追加しました。

Update : 2020.02.14.fri.

Haskell言語中級者の部屋
を、
を追加しました。

指定フォルダ以下の全フォルダ内の全ファイル名をフルパスで取得する関数

日記検索プログラム

 各プログラムは左記のページよりダウンロードしていただけます。
 いずれも、フリーウェア・無料、です。

 各プログラムは、いずれも、個人情報を収集したり送信したりするものではありません。

 SJファイル日記検索については、ソースプログラムも掲載いたしました。
 ただし、これにつきましては、あくまでもソースプログラムで、コードについての説明はありません。
 左記のリンクからアクセスしてください。

 左記に掲載のプログラムは、いずれも、Haskell言語で、作成・開発、したものです。

 Haskell言語のソースプログラムをご利用いただくためには、その開発環境が必要です。
 それをご利用させていただくためには、準備作業が必要です。
準備作業:
 Haskell言語の開発環境のインストールについては、Haskell Platformをダウンロードします。
http://hackage.haskell.org/platform/から、使用しているOSにあったものをダウンロードしてください。
 ダウンロードしたらインストールしましょう。
 これによって、ghcコマンドが使用できるようになります。
 コマンドプロンプトで、ghc プログラム名と入力してリターンキーを押せば、コンパイルが行われます。
 つまり、コマンドプロンプトで、ghc TTnKensaku4と入力してリターンキーを押せば、TTnKensaku4.hsがコンパイルされます。
 そして、TTnKensaku4.exeができあがります。
 ご使用方法にしたがって、コマンドプロンプトから、プログラム名に続いて、所定のパラメータを入力していただいて、リターンキーを押せば、TTnKensaku4が実行されて日記検索がご使用いただけます。

 なお、より簡略なサンプルプログラムの読解に必要な、Haskell言語の関数やサンプルプログラムの関数、についての説明を記述した電子書籍を、パブー・Puboo、にて200円で販売しております。
 タイトルは、関数型プログラミング言語 Haskell 超入門書、です。
 こちらもどうぞ宜しくお願いいたします。

 Update : 2020.01.15.wed.
 本プログラムは、書式や文字サイズの指定などのないプレーンなテキストファイルのうち、ANSI・ShiftJIS、および、UTF8、のコード体系で保存されているテキストファイルに対応しています。
 本プログラムは、日記ファイルを、検索対象に想定していますが、文章の先頭に日付行が存在していない通常のテキストファイルから、検索条件に合った文章を結果ファイルに抽出することもできます。

 悪意のあるコードはプログラムしていませんが、本プログラムのご利用によって生じた結果について、一切責任を負いません。
 ご了承ください。
 ご了承の上、本プログラムをご利用ください。
 文章の先頭に、半角数字4桁、ピリオド、半角数字2桁、ピリオド、半角数字2桁、ピリオド、で開始されている行を、日付として、検索条件に合った文章を日付付きで結果ファイルに抽出します。
 次の日付行が現れるまでは、それ以降のどの文章も、直近の手前の日付の文章として扱われます。
 日付行が存在していないテキストファイル(※ファイルタイプが.TXTか.txtのファイル)であっても、検索条件に合った文章の結果ファイルへの抽出は行われます。
 ファイル内の文章と文章の区別は、連続改行文字によって行います。
 ですから、文章の先頭とは、ファイルの先頭の位置か、あるいは、所定数以上の連続改行文字の次の位置です。
 連続改行文字が4個以上で別別の文章とみなしたい場合には、第1引数に4を指定してください。
 1と指定すれば、1行ごとに別別の文章とみなして検索&抽出が行われます。
 複合条件で検索できます。
(A or B or・・・) and (J or K or ・・・) and ・・・
 という形式の複合条件での検索です。
 詳しくは、各日記検索のページをご参照ください。

 フォルダ内の全.docxファイルを、プレーンな.txtファイルに変換するプログラムがあると便利かもしれません。
 Python言語を使用すれば、そのプログラムが50行ほどで完成するかと思います。
 ただし、.docxファイル中の表の中のデータはすべて消滅してしまいますが。
 フォルダ内の全.docxファイルを、プレーンな.txtファイルに変換するプログラムの作成の参考文献としては、『退屈なことはPythonにやらせよう--ノンプログラマーにもできる自動化プログラミング』Al Sweigart 著、相川愛三 訳、株式会社オライリー・ジャパン、が好適かと思います。
 リスト 79から92ページ。
 join()とsplit()メソッド 138から140、142ページ。
 コマンドライン引数を扱う 145ページ。
 os.pathモジュール 190から194ページ。
 ファイルの読み書きの方法 194から199ページ。
 Word文書 349から352ページ。
   .docxファイルから全テキストを取得する 351から352ページ。
 大体、以上を参考にすれば、フォルダ内の全.docxファイルを、プレーンな.txtファイルに変換するプログラムが完成させられるかと思います。

ファイルコードコンバータ

 各プログラムは左記のページよりダウンロードしていただけます。
 いずれも、フリーウェア・無料、です。

 これらのファイルコードコンバータのプログラムは、いずれも、個人情報を収集したり送信したりしません。
 悪意のあるコードはプログラムしていませんが、本プログラムのご利用によって生じた結果について、一切責任を負いません。
 ご了承ください。
 ご了承の上、本プログラムをご利用ください。

 ソースプログラムは掲載していません。

 左記に掲載のプログラムは、いずれも、Haskell言語で、作成・開発、したものです。

<感想>
 関数型プログラミング言語では、基本的に、変数への再代入ができない。
 変数に一旦値を設定したら、2度とその同じ変数に値を設定しなおすことができない。
 しかし例外があって、関数の引数に使用されている変数は、関数呼び出しの都度、値が再設定される。
 1回目の呼び出しの時に設定した値とは異なった値で2回目の呼び出し、それとはまた異なった値で3回目の呼び出し、それとはまた異なった値で・・・・
 なので、単一の記述の関数であっても、さまざまなバリエーションの値に対して、各値が引数に設定された時ならではのその時その時に固有の値を返すという、多様性が発揮できる。
 関数の引数の変数には、毎回、さまざまな値を設定して使用できる。そして設定されたさまざまな値ならではの返り値を返すことができる。これによって、様々な値のバリエーションに、関数型言語の関数であっても対応できる。
 そのような様々な値のバリエーションに適宜対応する関数を、様々な種類用意して、それらの関数を配列して組み合わせて使用することで、多用な処理を実現できてゆくことになる、関数型言語であっても。
 ひとつのデーターセットごとに、専用の関数をひとつずつ記述する、というようなことは必要ない。
 ひとつの関数が、ある類型的なデーターのバリエーションのすべてに対して、処理を果たせるので、引数の変数に設定する値を変更してのその関数の呼び出しによって。