When I looked at your string, I realized that it is actually a kind of key-value pair. My suggestion is to save the result returned from m// into a hash.
Make some small modification to the following code I gave, you can easily make it work for you:
use strict;
my $string = "DEFINITION BIO5 gene complete cds EC=1.7.7.1.
ACCESSION D17396
VERSION D17396.1 GI:498167
KEYWORDS protein; insulin-like protein;";
my %KVpairs = ($string =~ /(\w+)\s+(.*)/mg);#save the result right int
+o a hash
foreach (keys %KVpairs) {
print "[$_] = $KVpairs{$_}\n";
}