Parse the comments out of my esoteric code
Jelly, 8 7 bytes
»/ṣ”#ḢṖ
Try it online!
How it works
»/ṣ”#ḢṖ Main link. Argument: A (array of strings)
»/ Reduce the columns of A by maximum.
Since the space is the lowest printable ASCII characters, this returns the
non-space character (if any) of each column.
ṣ”# Split the result at occurrences of '#'.
Ḣ Head; extract the first chunk, i.e., everything before the (first) '#'.
Ṗ Pop; remove the trailing space.
Python 2, 48 43 bytes
lambda x:`map(max,*x)`[2::5].split(' #')[0]
Thanks to @xnor for golfing off 5 bytes!
Test it on Ideone.
JavaScript (ES6), 97 75 60 bytes
Thanks to @Neil for helping golf off 22 bytes
a=>a.reduce((p,c)=>p.replace(/ /g,(m,o)=>c[o])).split` #`[0]
Input is an array of lines.
a
is array inputp
is previous itemc
is current itemm
is match stringo
is offset