- ベストアンサー
複数htmlファイル内の特定のテキストに番号を付ける方法
- 複数のHTMLファイル内にある特定のテキストに番号を付ける方法について教えてください。
- 自動で画像のファイル名を変更するために、特定のテキストに番号を付ける必要があります。どのように行えばよいでしょうか?
- Dreamweaverや他のソフトウェアを使用して、HTMLファイル内の特定のテキストに番号を追加する方法を教えてください。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
VBScriptは使える環境(Windows)でしょうか? もしそうなら 以下の部分をchange.vbsとか名前をつけて保存し、 test001.htmlとかのファイルをまとめて選択してchange.vbsにドロップしてください。 ------8<------8<------8<------8<------8<------8<------8<------8<----- 'ドロップしたファイルのimage.jpgを置き換える 'test001.html の場合image001.jpg Dim fso, wsho, file, fileList Dim tempFile, outFile, readFile Dim strLine, fileName Dim regEx, matches, NO Set fileList =WScript.Arguments 'ドロップしたファイルのリスト Set fso = WScript.CreateObject("Scripting.FileSystemObject") Set wsho = WScript.CreateObject("WScript.Shell") Set regEx = New RegExp regEx.pattern="\d+$" For Each file in fileList tempFile = fso.BuildPath(fso.GetParentFolderName(file), fso.GetTempName) fileName=fso.GetBaseName(file)' c:\work\test001.html→test001 If regEx.Test(fileName) then 'マッチするか Set matches =regEx.Execute(fileName) NO = matches(0).Value '数字の部分を取り出す Set outFile = fso.CreateTextFile(tempFile, true) '作業ファイルを作る Set readFile = fso.OpenTextFile(file) Do until readFile.AtEndOfStream strLine = readFile.ReadLine '一行読み出し strLine = Replace(strLine, "image.jpg", "image" & NO & ".jpg")'置換 outFile.WriteLine(strLine) loop readFile.Close outFile.Close Set file=fso.GetFile(file) fileName = file.Name '元のファイル名の保存 file.Delete '元のファイルを削除 Set file=fso.GetFile(tempFile) file.Name=fileName '作業ファイルを元のファイルにリネームする end if next
お礼
BLUEPIXYさん 早速の返答ありがとうございます OSはWindowsXPを使っています。 ファイルを作って実験してみたところ 見事に置換されていました。 わざわざスクリプトを書いていただいてありがとうございました。 早速つかわせていただきたいと思います。