ファイル内文字列置換

以前紹介した、ファイルリードライトと正規表現を利用した文字列置換を組み合わせたもの。


Sub TextFileRW()
Dim RFname As String 'リードファイル名
Dim WFname As String 'ライトファイル名
Dim RFno As Long 'リードファイルハンドル
Dim WFno As Long 'ライトファイルハンドル
Dim Buf As String 'ファイルの1行バッファ
Set RE = CreateObject("VBScript.RegExp") 'オブジェクト生成

RFname = ThisWorkbook.Path & "\input.txt" 'リードファイル名設定
WFname = ThisWorkbook.Path & "\output.txt" 'ライトファイル名設定

RFno = FreeFile() '使用可能なファイル番号を取得
Open RFname For Input As #RFno 'ファイルをシーケンシャル入力モードで開きます
WFno = FreeFile() '使用可能なファイル番号を取得
Open WFname For Output As #WFno 'ファイルをシーケンシャル出力モードで開きます

'正規表現オブジェクトのメンバ設定
RE.Pattern = "\t" '検索パターンを設定
RE.IgnoreCase = False '大文字と小文字を区別する
RE.Global = True '文字列全体を検索

Do While Not EOF(RFno) 'ファイルの終端までループを繰り返します
Line Input #RFno, Buf 'リードファイルから行を変数に読み込みます
Buf = RE.Replace(Buf, vbCrLf) '検索パターンを置換
Print #WFno, Buf '変数をライトファイルに書き込みます
Loop

Close #RFno 'ファイルを閉じます
Close #WFno 'ファイルを閉じます
End Sub

テーマ : プログラミング
ジャンル : コンピュータ

2008-05-12 : Work-Win-Office/Acrobat : コメント : 0 : トラックバック : 0
Pagetop
コメントの投稿
非公開コメント

Pagetop
« next  ホーム  prev »

プロフィール

zive

Author:zive
大阪在住、男

ブログ検索

月別アーカイブ

FC2カウンター