http://qs321.pair.com?node_id=1215681

Eshan_k has asked for the wisdom of the Perl Monks concerning the following question:

Hello Monks, I am seeking perl wisdom. I have a text file in format:

APP> LumaIntraMode :D45_PRED, use_intrabc:0 AED> Dif: 80369151, Rng: 34624, Cnt: 10, Ret: 6 AED> Dif: 642953215, Rng: 52408, Cnt: 7, Ret: 13 APP> ChromaIntraMode :UV_CFL_PRED AED> Dif: 22413311, Rng: 36032, Cnt: 2, Ret: 5 AED> Dif: 115632447, Rng: 63232, Cnt: 11, Ret: 3 APP> ALPHA_U: 48, ALPHA_V: 0, CFL_ALPHA_SIGN: 5, CFL_ALPHA_IDX: 4 +8 APP> IntraAngleDelta : 3 0

I am trying to order print statements after grepping information from above text file.

if ($line =~ /\s*APP>\s*LumaIntraMode\s:(\w+),\suse_intrabc:(\d)/i) { print "Luma_mode = $1\n"; } if ($line =~ /\s*APP>\s*ChromaIntraMode:\s(\w+/i) { print "Chroma mode: $1\n"; } if ($line =~ /\s*ALPHA_U: (\d+), ALPHA_V: (\d+), CFL_ALPHA_SIGN: 5/i) +{ print "CFL : $3\n"; } if ($line =~ /\s*APP>\sIntraAngleDelta\s:\s(\d+)\s(\d+)/i) { print "Luma Angle : $1\n" } if ($line =~ /\s*APP>\sIntraAngleDelta\s:\s(\d+)\s(\d+)/i) { print "Chroma Angle : $2\n" }

I am getting output as: <\p>

Luma Mode: D45_PRED Chroma Mode: UV_CFL_PRED CFL: 5 Luma Angle: 3 Chroma Angle: 0

Can anyone suggest logic to print the above output in following order (changing ordering of print statement):

Luma Mode: D45_PRED Luma Angle: 3 Chroma Mode: UV_CFL_PRED CFL: 5 Chroma Angle: 0

I would really appreciate any help.