martes, 5 de mayo de 2009

AAP BloqueT2.12 ejercicio2

En un documento XML con la clasificación de los equipos de fútbol, imprimir sólo los que estén clasificados para liga de campeones (los 4 primeros)
El documento XML que he usado para definir la clasificación es el siguiente: clasificacion.xml
<?xml version="1.0" encoding="UTF-8"?>
<clasificacion>
<equipo name="FC Barcelona">
<posicion>1</posicion>
</equipo>
<equipo name="Betis">
<posicion>10</posicion>
</equipo>
<equipo name="Real Madrid">
<posicion>2</posicion>
</equipo>
<equipo name="Murcia">
<posicion>8</posicion>
</equipo>
<equipo name="Granada">
<posicion>4</posicion>
</equipo>
<equipo name="Valencia">
<posicion>3</posicion>
</equipo>
<equipo name="Sevilla">
<posicion>5</posicion>
</equipo>
</clasificacion>


El programa en Ruby en el que he usado XPath para encontrar los 4 primeros es como sigue: clasificacion.rb
#!/usr/bin/ruby

require 'rexml/document'
include REXML
documento = 'clasificacion.xml'
file = File.new(documento)
doc = Document.new(file)
XPath.each(doc,"//equipo[posicion<=4]/@name") { |equipo|
puts "*"+equipo.value
}


Al ejecutarlo en la terminal nos queda:
afharo@ajelandroHP:~/AAP/Clase 18/bloqueT212ej2$ ./clasificacion.rb
*FC Barcelona
*Real Madrid
*Granada
*Valencia

No hay comentarios:

Publicar un comentario