re = /\s+TRN\s+[a-z\d]+\s+\d+\s+(\s+\d+\s+)\w+(\s+\d{2}\w{3}\s+)\d\s([a-z]{5})\s+([a-z]{5})\s[a-z\d]+\s+[\D]+(\d{4}|\d{0})\s+(\d{4}|\d{0})/i
str = '4 TRN 2C 87 6628 AF 26NOV 4 FRLPD FRPLY HK1 1800 2007
3 TRN 2C 87 5266 BI 16NOV 1 FRBOJ FRMLV HK PAST 3333 3333*
4 TRN 2C 87 5454 BI 19NOV 4 FRMLV FRBOJ HK PAST *
3 TRN 2C 87 5266 BI 16NOV 1 FRBOJ FRMLV HK PAST *
4 TRN 2C 87 5454 BI 19NOV 4 FRMLV FRBOJ HK PAST *
3 TRN 2C 87 6609 AF 23NOV 1 FRPLY FRLPD HK PAST *
4 TRN 2C 87 6628 AF 26NOV 4 FRLPD FRPLY HK1 1800 2007
3 TRN 2C 87 6817 AF 25NOV 3 FRLPD FRBZR HK1 1810 2047
FRLPD/LYON PART DIEU//FRBZR/BEZIERS /TGD *
4 TRN 2C 87 6860 AF 27NOV 5 FRBZR FRLPD HK1 1618 1850
FRBZR/BEZIERS//FRLPD/LYON PART DIEU /TGD *
3 TRN 2C 87 6201 BF 23NOV 1 FRPLY FRVLA HK PAST *
4 TRN 2C 87 6194 BF 24NOV 2 FRVAF FRPLY HK1 0843 1110
FRVAF/VALENCE VILLE//FRPLY/PARIS GARE LYON /TGD *
3 TRN 2C 87 3101 B 24NOV 2 FRPSL FRAEZ HK1 0653 0903
FRPSL/PARIS ST LAZARE//FRAEZ/LE HAVRE /TIB *
4 TRN 2C 87 3130 A 25NOV 3 FRAEZ FRPSL HK1 1757 2010
FRAEZ/LE HAVRE//FRPSL/PARIS ST LAZARE /TIB *
3 TRN 2C 87 6700 BF 26NOV 4 FRAEK FRPLY HK1 0542 0837
FRAEK/MULHOUSE VILLE//FRPLY/PARIS GARE LYON /TGD *
4 TRN 2C 87 9223 BF 27NOV 5 FRPLY FRAEK HK1 1823 2103
FRPLY/PARIS GARE LYON//FRAEK/MULHOUSE VILLE /TGL *
3 TRN 2C 87 5352 BF 26NOV 4 FRLPD FRDJU HK1 0629 0835
FRLPD/LYON PART DIEU//FRDJU/MASSY TGV /TGD *
4 TRN 2C 87 5233 BF 26NOV 4 FRDJU FRRNS HK1 1538 1747
FRDJU/MASSY TGV//FRRNS/RENNES /TGA *
5 TRN 2C 87 5346 BF 27NOV 5 FRRNS FRLPD HK1 1609 2030
FRRNS/RENNES//FRLPD/LYON PART DIEU /TGD *
3 TRN 2C 87 6602 BF 30NOV 1 FRLPD FRPLY HK1 0602 0813
FRLPD/LYON PART DIEU//FRPLY/PARIS GARE LYON /TGD *
4 TRN 2C 87 6629 BF 04DEC 5 FRPLY FRLPD HK1 1857 2057
FRPLY/PARIS GARE LYON//FRLPD/LYON PART DIEU /TGD'
# Print the match result
str.scan(re) do |match|
puts match.to_s
end
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Ruby, please visit: http://ruby-doc.org/core-2.2.0/Regexp.html