前回は、
バッチ利用例で一番多いのは、
前回の宿題の回答
「c:\windows\tmp」
宿題の回答、
「c:\windows\tmp\aa.csv」から「\\FILESV\aa.csv」へファイル移動
「ファイルコピー」
コメントと変数
2回目の講義に入る前に、 コメントの指定には、 変数の考え方はPHPと一緒で、 また、 以下は、 なでしこは、 以下は、 今回は、 まずは、 また、 ワイルドカードを使う場合の、 この場合、 このプログラムを実行すると、 次は、 このプログラムを実行すると、 もうひとつ、 今回は、 正規表現を使う場合の、 この場合、 このプログラムを実行してみましょう。きちんと検索対象の行だけが表示されたはずです。 ここまではデータを直接プログラム内に書きましたが、 ファイルを読み込む場合の、 この命令は対象のファイルを一行ずつメモリに読み込みます。ほとんどの場合、 では、 テキストファイルが保存ができたら、 プログラムを実行してみましょう。デスクトップ画面に 次は、 文字列を置換する場合の、 プログラムは以下のようになります。 後は、 内容は、 今回は、1.コメントの指定
#コメントです。
//コメントです。
2.変数の指定
あああとは文字列
いいいとは整数
うううとは配列
3.インデント
もし、あああ=いいいならば
「あああといいいは同じです。」と言う。
違えば
「あああといいいは違います。」と言う。
文字列の検索
ワイルドカードを利用する
AがBにワイルドカードマッチ
検索文字とは配列
パスとは文字列
パス=『子供の時の愛読書は「西遊記」が第一である。これ等は今日でも僕の愛読書である。比喩談としてこれほどの傑作は、西洋には一つもないであらうと思ふ。名高いバンヤンの「天路歴程」なども到底この「西遊記」の敵ではない。それから「水滸伝」も愛読書の一つである。これも今以て愛読してゐる。一時は「水滸伝」の中の一百八人の豪傑の名前を悉く諳記(あんき)してゐたことがある。その時分でも押川春浪氏の冒険小説や何かよりもこの「水滸伝」だの「西遊記」だのといふ方が遥かに僕に面白かつた。』
パスを反復//変数(パス)の中のデータを反復して、一行づつ処理しています。
対象が「*西遊記*」にワイルドカードマッチ
もし、それが空でなければ
それを検索文字に配列追加//マッチしたデータを検索文字(配列変数)に積み重ねるように追加してます。
検索文字を言う。//検索結果の表示
終わる。
複数のキーワードで検索する
#パスと言う変数にデータを放り込みます。
パス=『子供の時の愛読書は「西遊記」が第一である。これ等は今日でも僕の
愛読書である。比喩談としてこれほどの傑作は、西洋には一つもないであらうと
思ふ。名高いバンヤンの「天路歴程」なども到底この「西遊記」の敵ではない。
それから「水滸伝」も愛読書の一つである。これも今以て愛読してゐる。一時は
「水滸伝」の中の一百八人の豪傑の名前を悉く諳記(あんき)してゐたことがあ
る。その時分でも押川春浪氏の冒険小説や何かよりもこの「水滸伝」だの
「西遊記」だのといふ方が遥かに僕に面白かつた。』
検索文字とは配列
パスを反復
対象が「*天路歴程*西遊記*」にワイルドカードマッチ
もしそれが空でなければ
それを検索文字に配列追加
検索文字を言う//検索結果の表示
終わる。
正規表現を利用する
AをBに正規表現マッチ
#パスと言う変数にデータを放り込みます。
パス=『子供の時の愛読書は「西遊記」が第一である。これ等は今日でも僕の
愛読書である。比喩談としてこれほどの傑作は、西洋には一つもないであらうと
思ふ。名高いバンヤンの「天路歴程」なども到底この「西遊記」の敵ではない。
それから「水滸伝」も愛読書の一つである。これも今以て愛読してゐる。一時は
「水滸伝」の中の一百八人の豪傑の名前を悉く諳記(あんき)してゐたことがあ
る。その時分でも押川春浪氏の冒険小説や何かよりもこの「水滸伝」だの
「西遊記」だのといふ方が遥かに僕に面白かつた。』
検索文字とは配列
パスを反復
対象が「^愛読書.*」に正規表現マッチ
もしそれが空でなければ
それを検索文字に配列追加
検索文字を言う//検索結果の表示
終わる。
ファイルの入出力と連動
A(対象のファイル)を毎行読む。
『子供の時の愛読書は「西遊記」が第一である。これ等は今日でも僕の
愛読書である。比喩談としてこれほどの傑作は、西洋には一つもないであらうと
思ふ。名高いバンヤンの「天路歴程」なども到底この「西遊記」の敵ではない。
それから「水滸伝」も愛読書の一つである。これも今以て愛読してゐる。一時は
「水滸伝」の中の一百八人の豪傑の名前を悉く諳記(あんき)してゐたことがあ
る。その時分でも押川春浪氏の冒険小説や何かよりもこの「水滸伝」だの
「西遊記」だのといふ方が遥かに僕に面白かつた。
1982/10/08』
検索文字とは空//変数(検索文字)の初期化
「c:\aozora.txt」を毎行読んで反復。
対象を「^愛読書.*」で正規表現マッチ
もしそれが空でなければ
それを検索文字に配列追加
検索文字を「{デスクトップ}load.txt」に保存//検索結果をデスクトップのload.txtに保存しました。
#検索文字を「C:\Users\choco\Desktop\load.txt」に保存//これでも上と同じです。
終わる。
文字列の置換
AをBに置換。
AのBをCへ正規表現置換。
「c:\aozora.txt」を毎行読んで反復
もし、対象が「*西遊記*」にワイルドカード一致ならば
対象の「西遊記」を「孫悟空」に正規表現置換、それを検索文字に配列追加//置換対象が見つかったら置換します。
違えば、もし、対象が「(\d+)/(\d+)/(\d+)」に正規表現一致ならば
対象の「(\d+)/(\d+)/(\d+)」を「$2月$3日」へ正規表現置換、それを検索文字に配列追加//置換対象が見つかったら置換します。
違えば
対象を検索文字に配列追加
検索文字を「{デスクトップ}load2.txt」に保存//検索結果をデスクトップのload2.txtに保存しました。
終わる。