XML解析:
使用Ruby的REXML库来解析XML文档。
require 'rexml/document'
xml_data = <<-XML
<root>
<element attribute="value">Content</element>
</root>
XML
doc = REXML::Document.new(xml_data)
# 访问XML元素
root_element = doc.root
element = root_element.elements['element']
puts element.text # 输出:Content
# 访问属性
attribute_value = element.attributes['attribute']
puts attribute_value # 输出:value
XSLT转换:
使用Ruby的Nokogiri库来进行XSLT转换。
require 'nokogiri'
xml_data = <<-XML
<root>
<element attribute="value">Content</element>
</root>
XML
xslt_data = <<-XSLT
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<body>
<h1><xsl:value-of select="root/element"/></h1>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
XSLT
xml_doc = Nokogiri::XML(xml_data)
xslt_doc = Nokogiri::XSLT(xslt_data)
result = xslt_doc.transform(xml_doc)
puts result.to_s
XPath查询:
使用Ruby的Nokogiri库进行XPath查询。
require 'nokogiri'
xml_data = <<-XML
<root>
<element attribute="value">Content</element>
</root>
XML
doc = Nokogiri::XML(xml_data)
# 使用XPath查询
element_text = doc.at_xpath('//element').text
puts element_text # 输出:Content
这是一个简单的介绍,涉及到处理XML、XSLT和XPath的基本用法。在实际应用中,你可能会面对更复杂的场景,需要更详细的处理和更多的选项。确保查阅相关文档以深入了解这些库的功能和用法。
转载请注明出处:http://www.zyzy.cn/article/detail/6476/Ruby