use strict; use Test::More tests => 4; sub ungonk { local $_ = $_[0]; if (/^(foobar:.{1,5}).*gonk$/) { return $1 } else { return undef }; }; is ungonk('foobar:hellogonk'), 'foobar:hello'; is ungonk('foobar:gonk'), undef; is ungonk('foobar:higonk'), 'foobar:hi'; is ungonk('foobar:helloworldgonk'), 'foobar:hello';