in reply to Split on Blank Line into array, and keep the blank line in the array

If I understand you correctly, I think what you want is the following:

@finfo=split(/(\n{2,})/, <IFILE>); #<+++++

From split:

If the PATTERN contains parentheses, additional list elements are created from each matching substring in the delimiter.

split(/([,-])/, "1-10,20", 3);

produces the list value

(1, '-', 10, ',', 20)