這可能是一個愚蠢的問題,但我從昨天開始就無法做到。 我得到了一個包含一些數據,我需要使用的輸入文件,它應該是這樣的:將輸入存儲到變量Ruby
x <= 42 & x >= 20 | x < 50
y > 10 & y < 20
z < 100 & z > 101
y > 5
w <= 0
a >= 0 | a <= 10
我需要能夠將其分成說明,以下格式:<variable> <operator> <number>
,每的說明是分開的,正如你所看到的,'&','|'或者一個新行(在我的情況下意味着與'|'相同)。
請注意,x
變量出現在2個不同的行中,但它指的是相同的x
,一個不應覆蓋另一個。
我瘋狂的猜測是遍歷文本並將其拆分爲4個字符串塊,那就是了。這個問題是我不知道如何處理Ruby中的新行。
我想:
lines = []
begin
file = File.open(ARGV.at(0))
while (t = file.gets.chomp)
lines << line.split
end
file.close
rescue => e
puts e
end
這將每個分割返回,行陣列,成的話,但我仍然需要獲得新行。
TL; DR:鑑於先前的輸入,我需要能夠做一些事情,如:
x = (LeftInfinite.new(42,']').intersection(RightInfinite.new('[',20).union(LeftInfinite.new(50,')')
對於一線例如
這是預期的輸出,還是這是一個輸入? – mutantkeyboard
這就是我正在閱讀的文件的外觀。 – Stieg
你可以分享期望的輸出應該是什麼樣子?請.. – zee