From: James Calivar Date: 2006-09-15T08:37:54+09:00 Subject: Newbie regexp question Hello, I'm trying to split a formatted text file into four separate columns. The data is comprised of lines of text that are bundled into four distinct columns, corresponding to a "Required versus Optional" variable, a requirement number, a requirement classification (R1=Rev 1, F=Future, I=Internal), and a textual description of the requirement. My raw data looks like this in the input text file: R [01] R1 The system shall support "emergency call processing" R [02] R1 The system shall support "local call processing" R [08] F The system shall provide a command-line user interface R [723] F The system shall provide 6 10/100/1000 Ethernet interfaces R [11] F The system shall support VoIP networks R [398] R1 The system shall contain 2 control boards O [327] I The system should support hotswapping of all internal boards R [19] I The system shall be able to detect transmission errors R [631] F The system shall continue processing data as long as a call is active. I've set up a loop to process each line in the input file, and what I'd like to get is four separate variables containing on a line-by-line basis the data corresponding to the four distinct columns. The problem is my regexp experience is next to nothing, and I can't figure out how to extract the data I want since my fourth column contains whitespace (I'd have used that as my column separator otherwise). Here's my loop: File.open(textfile, "r") do |input_file| while line = input_file.gets output_file << line end end What can I replace the simple copy statement (output_file << line) with in order to get what I want? Thanks in advance, I hope this question makes some sense. James -- Posted via http://www.ruby-forum.com/.