0
私のテキストファイルは、私が投票キャンペーンの有効性の選択の値を取得したいこの
VOTE 1168041805 Campaign:ssss_uk_01B Validity:during Choice:Antony CONN:MIG01TU MSISDN:00777778359999 GUID:E6109CA1-7756-45DC-8EE7-677CA7C3D7F3 Shortcode:63334
VOTE 1168041837 Campaign:ssss_uk_01B Validity:during Choice:Leon CONN:MIG00VU MSISDN:00777770939999 GUID:88B52A7B-A182-405C-9AE6-36FCF2E47294 Shortcode:63334
のように見える
は、そのため私はこれをやっている:
File.foreach('lib/data/file.txt') do |line|
line = line.tidy_bytes
begin
aline = line.match(/^VOTE\s(\d+)\sCampaign:([^ ]+)\sValidity:([^ ]+)\sChoice:([^ ]+)/)
unless aline.nil?
## do something
end
rescue Exception => e
raise " error: " + e.inspect
p line.inspect
next
end
end
があるが、任意のより良いです[2]アリーンを
aline = line.match(/^VOTE\s(\d+)\sCampaign:([^ ]+)\sValidity:([^ ]+)\sChoice:([^ ]+)/)
のためにこれをやってアリーン[1]アリーンを取得するための方法、[3]とアリーン[4]
は '使用することを忘れないでください\ Rubyの '^'と '$'の代わりに 'A'と' \ z'をそれぞれ "文字列の始まり"と "終りの文字列"を意味します。 2番目の形式は、 "行頭"と "行末"を意味するために使用され、予想以上に大きな結果をもたらす可能性があります。 – tadman