私はこのスクリプトをより大きなものにしました。ルビーのコントロールフローをより良く処理し、オブジェクトを無制限に処理するには
:私は今持っているスクリプトはオブジェクトnilの出力、を私はお互いにlitle切り抜いに見える木切り抜いたXMLファイルを持っていると私はより良いnilのオブジェクトおよびXPath式を処理するための制御構造のいくつかのタイプを必要とします
require 'open-uri'
require 'rexml/document'
include REXML
@urls = Array.new()
@urls << "http://testnavet.skolverket.se/SusaNavExport/EmilObjectExporter?id=186956355&strId=info.uh.kau.KTADY1&EMILVersion=1.1"
@urls << "http://testnavet.skolverket.se/SusaNavExport/EmilObjectExporter?id=184594606&strId=info.uh.gu.GS5&EMILVersion=1.1"
@urls << "http://testnavet.skolverket.se/SusaNavExport/EmilObjectExporter?id=185978100&strId=info.uh.su.ARO720&EMILVersion=1.1"
@urls.each do |url|
doc = REXML::Document.new(open(url).read)
doc.elements.each("/educationInfo/extensionInfo/nya:textualDescription/nya:textualDescriptionPhrase | /ns:educationInfo/ns:extensionInfo/gu:guInfoExtensions/gu:guSubject/gu:descriptions/gu:description | //*[name()='ct:text']"){
|e| m = e.text
m.gsub!(/<.+?>/, "")
puts "Description: " + m
puts ""
}
end
OUTPUT:
説明:、、kalandrering、bestrykning tryckning kemiteknik
説明:VILLデュjobba MED internationella OCH globalafrågor私d ... 説明:今日の世界と学校の理解のために、グローバリゼーションの研究がますます増えています グローバルスタディは研究のためのユニークな環境です。
説明:
説明:
説明:Kursen behandlar identifieringen OCH beskrivningen AV sjukligaförändringar私mänskligaskelett。使用可能な文字数は です。 モダンクリスマスデータディスクテスタまでのスケルトンフォールディングストリングの数です。
ヒント:「puts」説明:「+ m」は「puts」としてよく書かれます。説明:#{m} "'、IMO。また、 'puts" "'は 'puts'と同じです。また、 'foo = Array.new'の代わりに' foo = [] 'だけでもできます([この質問]を参照してください(http://stackoverflow.com/questions/4601652/ruby-array-creation-array-new-vs )それについてはもっと詳しく)。 –
@Andrew:ありがとう。 – SHUMAcupcake