トップページへ

U8ファイル日記検索

(TUnKensaku6.exe)

Access Count : 916

 実行プログラムは無料でご利用いただけます。
 ソースプログラムは説明付きで、Puboo・パブー、にて、genritomechanism・竹花忠、が、180円で販売しております。
 書名は、日記検索ソースプログラム(Haskell言語)と説明、です。
 こちらのご利用もお勧めします。

 なお、ダウンロードのリンクは、一番下のセクションの前の方に配置してあります。

 Update : 2020.01.26.sun.

ご使用上のご注意


 悪意のあるコードはプログラムしていませんが、本プログラムのご利用によって生じた結果について、一切責任を負いません。
 ご了承ください。
 ご了承の上、本プログラムをご利用ください。

<注意>
 対応OSは、Windows 10です。

 本プログラムの結果ファイル名は、検索対象フォルダー内に、Tfzkbp1sfSELECT*.TXTとTfzkbp1sfRVS*.TXTという名前で作成されます。
 検索対象フォルダーに指定したフォルダー内のTfzkbp1sfSELECT*.TXTとTfzkbp1sfRVS*.TXTは、毎回、*部分の数字が差し換わって、次々増設されてゆきます。
 適宜、不要になったら結果ファイルを削除するなどしてください。

 本プログラムが正常に動作するためには、検索対象フォルダー内の、.TXTか.txtのファイルが、UTF8のコード体系で保存されている必要があります。
 また、検索条件ファイル、.JKNか.jknのファイルも、UTF8のコード体系で保存されている必要があります。
 ShiftJISなど、ほかのコード体系の、.TXTか.txtか.JKNか.jknのファイルに本プログラムがアクセスすると、本プログラムは、異常終了します。
 なお、ShiftJIS・ANSI、のコード体系のファイルには、TTnKensaku4プログラムを使用してください。

 本プログラムTUnKensaku6は、BOMなしのUTF8コード体系で、検索結果ファイルを出力します。
 検索対象ファイルおよび検索条件ファイルには、BOMなしのUTF8のファイルでもBOMありのUTF8のファイルでもご使用いただけます。

本プログラムのご説明


<説明>
 下記は、検索結果ファイルの例です。
*** 下記は、 c:\utf8Nikki\nikki500.txtからの抽出です。******

1 -- 6 in <c:\utf8Nikki\nikki500.txt>
@2004.02.12.
1
未明に、思考の展開、についての文章を1本アップロードした。
午後10時半頃にも、もう1本アップロードした。




 上記の例において、抽出文章は、
未明に、思考の展開、についての文章を1本アップロードした。
午後10時半頃にも、もう1本アップロードした。




です。
 抽出文章の3行手前には、検索対象ファイル中の行番号と、検索対象ファイルの名前を表示します。
 それが、
1 -- 6 in <c:\utf8Nikki\nikki500.txt>
です。
 検索対象ファイル中の検出した文章の行番号は、抽出文章の先頭行番号 -- 抽出文章の末尾行番号、という形式で表示します。
 検索対象ファイル名の表示は、in <検索対象ファイル名>、という形式で表示します。
 以上の2項目を1行で表示します。

 文章の先頭とは、ファイルの先頭か、所定数以上の連続改行文字の次の位置です。
 本プログラムでは、文章の先頭行の行頭から始まる4桁の半角数字、半角ピリオド、そして、2桁の半角数字、半角ピリオド、また2桁の半角数字、半角ピリオド、で始まっている行を、日付とみなします。
 次の日付行が検出されるまでは、どの文章も、直前の日付の文章として扱われます。
 抽出文章に直近の、この日付、と思われる文字列を含む行を、@の次に配置して、抽出文章の2行手前に置きます。
 それが、
@2004.02.12.
です。
 さらに、抽出文章の直前には、検索対象ファイル内における抽出件数番号を置きます。
 それが、
1
です。

 本プログラムは、以上の3行を、各抽出文章ごとにその直前の3行に付記します。

 この例の場合、検索対象ファイルとして想定されるものは、下記のようなものになります。
2004.02.12.
 きょうは、午前8時に起床した。





未明に、思考の展開、についての文章を1本アップロードした。
午後10時半頃にも、もう1本アップロードした。




 以上の内容のファイルが、cドライブのutf8Nikkiフォルダー内にnikki500.txtとして存在していると、上述した結果ファイルが得られます。
コマンドプロンプトから、
TUnKensaku6 4 shikouutf8.jkn +++ c:\utf8Nikki
とタイプ入力して、リターンキーを押した場合に。
 またこの場合の、検索条件ファイルshikouutf8.jknの例は、
思考
考察
+++
文章
書面
+++
アップロード
です。
 そして、この検索条件ファイルも、検索対象ファイルも、UTF8コード体系で、保存されていることが必要です。
 ShiftJIS・ANSI、コード体系で、保存されている場合には、本プログラムではなく、TTnKensaku4がご利用いただけます。


 本プログラムで、日記検索が行われる対象のテキストファイルは、まず、UTF8のコード体系で保存されていること。
 そして、文章の先頭行に、4桁の半角数字、半角ピリオド、そして、2桁の半角数字、半角ピリオド、また2桁の半角数字、半角ピリオド、で始まっている行、つまり、日付行が存在すること。
 そして、抽出対象となる1件1件の文章は、連続改行文字で隔てられていること。
 以上が必要です。
 ただし、日付行が存在しなくても、指定した個数の連続改行文字で隔てられた文章ごとに、複合条件で全文検索は行われます。しかし、抽出文章の2行上の@の次からに、日付情報が置かれなくなります。
 日付行が存在していれば、抽出文章の手前側の直近の日付行の情報が、@の次からに出力されます。
 なお、本プログラムは、結果ファイルは、検索対象ファイルとしては取り扱いません。
 結果ファイルが増設されても、結果ファイルが存在する前のテキストファイル(※ファイルタイプ、.TXTか.txtのファイル)だけを対象にして、複合条件で全文検索を行います。
 なお、検索対象フォルダー内に存在するフォルダーは検索対象外です。

<ご使用方法>


<ご使用方法>
 本プログラムTUnKensaku6は、コマンドプロンプトを起動して、実行します。
 コマンドプロンプトに、chcp 932を入力して、コードページをShiftJISに設定します。
 使用するテキストファイルのコード体系は、UTF8でなければ、このプログラムは正常に動作しません。

 検索対象ファイルや検索条件ファイルは、UTF8、のコード体系で保存してください。

 コマンドプロンプトから、TUnKensaku6 セパレータカウント 検索条件ファイル名 セパレータ 検索対象フォルダー名、を入力してご利用ください。
 つまり例えば、
TUnKensaku6 4 utf8joukenfile.jkn +++ c:\utf8textfolder
のようにタイプ入力してリターンキーを押してください。
 上記のように、プログラム名の前や検索条件ファイル名の前のパスを省略した場合、コマンドプロンプトのカレントフォルダーがパスとして使用されます。
 セパレートカウントは、検索対象ファイルの中の文章と文章を、改行文字連続何個で区切っているか。
 その改行文字の連続個数、を指定する数字です。上の例では4を使用しました。
 検索条件ファイル名は、全文検索の複合条件を登録したファイル名です。
 上の例では、検索条件文字列が登録されているファイルを、utf8joukenfile.jknとしました。
 セパレータは、検索条件ファイル内で、検索条件文字列のブロック同士を区別する文字列です。
 ブロック内の文字列同士は論理和で検索されます。別のブロック同士は、論理積で検索されます。
 つまり、思考か考えか見解が含まれていて、なおかつ、アップロードか公開、が含まれている文章を抽出したい時には、
思考
考え
見解
+++
アップロード
公開
という風に、検索条件ファイルに登録します。
 この場合、ブロックとブロックを隔てている+++がセパレータです。
 なお、このファイルも、UTF8コード体系で作成してある必要があります。
 検索対象フォルダー名は、検索対象とするUTF8コード体系の、.txtか.TXTであるファイルが格納されているフォルダーの名前です。
 それらを、プログラム名に続けて、
TUnKensaku6 4 utf8joukenfile.jkn +++ c:\utf8textfolder
と、コマンドプロンプトでタイプ入力して、リターンキーを押すと、日記検索が始まります。

ABCかDEFGかHIを含んでいて、なおかつ、JKLかMNOを含んでいて、なおかつ、PQRかSTUかVWXかYZを含んでいる文章を検索したいなら、
検索条件ファイルに、 ABC
DEFG
HI
+++
JKL
MNO
+++
PQR
STU
VWX
YZ
と登録してください。
 ここで、+++は、検索条件ファイル内のセパレータです。
 セパレータには、特殊文字を使用することはできません。
 セパレータは、検索条件ファイル内のセパレータです。
検索条件ファイルの登録の際に使用したセパレータをタイプしてください。
したがって、上記の例では、+++をセパレータとしてタイプしてください。
 検索対象フォルダー名は、複合条件で全文検索を実施する対象フォルダーの名前です。
 検索対象フォルダー内の、.TXTか.txtのファイルだけを対象にして、先に登録した検索条件ファイル内の複合条件にて、全文検索を実施します。
 ただし、検索対象フォルダー名ではなく、テキストファイル名を指定した場合には、指定したテキストファイルに対して複合条件全文検索を実施します。

 プログラム名に続けて、以上、4項目を、コマンドプロンプトから入力してください。
TUnKensaku6 セパレータカウント 検索条件ファイル名 セパレータ 検索対象フォルダー名
 とタイプ入力して、リターンキーを押すと、複合条件全文検索プログラムが実行されます。
 実行結果が、出力ファイルに得られます。
 ちなみに、出力ファイル名は、複合条件全文検索の結果、条件を満たした文章を抜き出して登録したファイルTfzkbp1sfSELECT*.TXTと条件を満たさなかった文章を登録したファイルTfzkbp1sfRVS*.TXTです。
 *には、数字、ハイフン、ピリオド交じりの文字列がファイル名の一部として位置します。

 繰り返しますが、TUnKensaku6は、指定した1つのフォルダー内の、.TXT か .txt のファイルだけを検索対象ファイルにして、複合条件で全文検索を実施するプログラムです。
 ただし、TUnKensaku6の4番目の最後の引数に、フォルダー名ではなく、ファイル名まで入力すると、その1ファイルだけを検索対象ファイルにして、複合条件で全文検索が実施できます。

<ご使用上のご注意>
 検索対象フォルダー内には、UTF8のコード体系のプレーンなテキストファイルだけを、ファイルタイプ名を.TXTか.txtで用意してください。
 ただし、.JKNや.jknのファイルが存在していてもそれがUTF8のコード体系のプレーンなテキストファイルなら問題ありません。
 もしUTF8のコード体系以外の、.TXTか.txtか.JKNか.jknのファイルに本プログラムがアクセスした場合には、本プログラムは異常終了します。
 本プログラムを実行していただければ、日記検索がご利用いただけます。

ダウンロード

Update : 2020.02.01.sat.
フリーウェア・無料、です。
TUnKensaku6.exe
Windows 10対応
Author : TAKEHANA TADASHI
Program Size : 23,390,782 bytes
Version : 1.01.
Note : プログラムの起動時に指定したパラメーターの件数が不適切だった時に、使い方の案内情報を表示するようにしました。


 ダウンロードしましたら、『ダウンロード』フォルダーに、TUnKensaku6.exeがあるかと思います。
 たとえば、ユーザー名をTakehanaと設定している場合。
 まず、エクスプローラーで、『ダウンロード』フォルダーを開いて、TUnKensaku6.exeをコピーします。
 エクスプローラーで、『PC』をクリックし、『C:』をWクリックし、『ユーザー』をWクリックし、『Takehana』をWクリックして、コピーしたTUnKensaku6.exeを貼り付けます。
 コマンドプロンプトを起動します。
 プロンプトが、C:\Users\Takehana>となっていなければ、次のコマンドを実行します。
cd c:\Users\Takehanaとタイプ入力して、リターンを押します。
 これで、プロンプトが、C:\Users\Takehana>になります。
 これで、カレントフォルダーが、本プログラムTUnKensaku6.exeの存在するフォルダーになりました。
 そこで、
TUnKensaku6 4 c:\utf8jouken\jouken.jkn +++ c:\utf8filefolder
とタイプ入力して、リターンキーを押せば、Cドライブのutf8joukenフォルダー内のjouken.jknを検索条件ファイルとして、Cドライブのutf8filefolder内のテキストファイルを検索対象ファイルとして、本プログラムTUnKensaku6.exeが起動します。
 詳しくは、<ご使用方法>をご参照ください。