¿Cómo puedo emular la funcionalidad 'grep -B' en Perl?

He estado buscando una solución que me permita buscar las líneas de una matriz, y si se hace una coincidencia de cadena, inserte esa línea y las 2 líneas anteriores en una matriz. Parece que esto se haría fácilmente usando lagrep comando. Sin embargo, no puedo hacer que esto funcione. Esto es lo que tengo

sub ipsearch {
    my $ip = $_[0];
    my @IPVSCONFIG =  grep (/\W+virtual\s$ip\s/, @RAWDATA);
}

¿Es posible agregar la sintaxis "-B 2" al comando grep? He probado varias formas de esta sintaxis, pero no puedo hacer que funcione:

@IPVSCONFIG =  grep -B 2 (/\W+virtual\s$ip\s/, @RAWDATA);

Por favor, avíseme si esto es posible y cuál debería ser la sintaxis correcta. Si tiene alguna otra sugerencia, hágamelo saber.

¡Gracias por la ayuda

Respuestas a la pregunta(3)

Su respuesta a la pregunta