It would be easier to give you advice if you told us what you already know and thought of. Right now I'll just try and guess what I should tell you and what you already know.
Your conditions on the lines sound like a job for regular expressions. And there kind of is a "from .. until" operator in Perl, which is the flip flop operator, which would allow you to do something like (check the next keyword by the way) :
next unless /^h/ .. /^h/; # stop processing the line unless we are b
+etween two lines starting with h
Which is nice and short, but not well known and understood, so if it looks to hard to understand to you, or if there probably will be a lot of people reading your code, you could use classic control structures : if, else, unless.