需要帮助解析特定类型的页面

时间:2017-03-31 14:40:02

标签: ruby-on-rails ruby ruby-on-rails-5

好的,仅供参考,我将使用liquipedia API来解析this text area 我的问题是当我有一个像|title4=Nearby Cast Range |value4=500这样的行解析成一个关键值哈希,如{" Neraby Cast Range" => " 500"}

谢谢

1 个答案:

答案 0 :(得分:0)

您可以使用Regexp来解析单个行。

line = "|title4=Nearby Cast Range       |value4=500"

pattern = /\|title4=(.*)\|value4=(.*)/
matches = pattern.match(line)
title = matches[1].strip
value = matches[2].strip

myHash = {}
myHash[title] = value

#> puts myHash
#> {"Nearby Cast Range"=>"500"}

<强>更新

对于titlevalue字段后面的任何数字,您可以将\d*添加到正则表达式中:

pattern = /\|title\d*=(.*)\|value\d*=(.*)/

这适用于title0title4title123等。