in reply to Nested search and print

You can do it simply with regular expressions:

#!/usr/bin/perl use strict; use warnings; local $/; my $result = <DATA>; print "task name = ", $result =~ /task\.name:(.*)$/m, "\n"; print "task mod time = ", $result =~ /task\.lastmodifiedtime:(.*)$/m, +"\n"; __DATA__ task.start # task.id: 1 task.name:"abc" task.info: xyz task.schedule: task.notify: task.nextruntime: task.lastmodifiedtime: 2010-04-12T11:57:56+01:00 by user1@server1 task.args:

but this may not be the best choice depending on how much manipulation you want to do. If you are going to want to do more than just print, splitting into a hash or even a hash of hashes may be a better choice.