my $check=qr/\A\Q$prefix\E(.)?/; $k=$prefix; if( ($rc=$cursor->c_get($k, $v, DB_SET_RANGE))==0 and $k=~$check ) { do { if( defined $1 ) { ... } } while( ($rc=$cursor->c_get($k, $v, DB_NEXT))==0 and $k=~$check ); }