別の構文に変換する必要がある非常に長い SGML ファイルがありますが、何らかの理由でコードが機能しません。出力を取得すると、まったく同じドキュメントになります。コードは次のとおりです。
#!usr/bin/env ruby
def replaceStrings(toChange)
##Remove Title tags and replace with the correct
toChange.gsub(/<title>/) { "=====" }
toChange.gsub(/<\/title>/) { "=====" }
##Image
toChange.gsub(/<graphic fileref="/) { "{{" }
toChange.gsub(/<\/graphic>/) { "|}}" }
toChange.gsub(/;" scale="60">/) { "" }
##Paragraphs
toChange.gsub(/<para>/) { "" }
toChange.gsub(/<\/para>/) { "" }
puts toChange
end
fileInput = ARGV[0]
fileOutput = ARGV[1]
document = File.readlines(fileInput)
puts fileInput
puts fileOutput
document.each { |e| replaceStrings(e)}
File.new(fileOutput, 'w')
File.open(fileOutput, 'w'){
|f| f.write(document)
}
私が知る限り、replaceString メソッドを呼び出すことはできますが、何かが足りないのでしょうか、何か間違ったことをしているでしょうか?
注: 私は Ruby の初心者です。