Ruby hpricot不喜欢破折号,是否有解决方法?

时间:2010-03-24 06:18:39

标签: ruby-on-rails ruby

我正在尝试使用hpricot解析xml文件。我想要获得的xml元素虽然有一个破折号因此我面临的问题

XML

<xliff xmlns="urn:oasis:names:tc:xliff:document:1.1" version="1.1">
  <trans-unit>
    <source>"%0" can not be found. Please try again.</source>
    <target>"%0" can not be found. Please try again.</target>
  </trans-unit>
</xliff>

RB

  def read_in_xliff(xlf_file_name)
    stream = open(xlf_file_name) {|f| Hpricot(f)}
    (stream/:xliff/:'trans-unit').each do |transunit|
..........

由于破折号,这不起作用。如果我将标签重命名为transunit并相应地编辑符号引用,一切似乎都没问题。我认为使用引号之间的符号应该工作,但hpricot似乎不喜欢这样。有人能想到一个解决方法吗?

提前致谢

1 个答案:

答案 0 :(得分:0)

应该工作, 为我工作。更详细的答案需要比“Hpricot似乎不喜欢这样”的更详细的错误消息。