($var =~/(?<=use )neighbor[[:alpha:]-]* ([[:alnum:]\.-:]+)/) and do{ print $1; }; #### Compiling REx `(?(5) 5: SUCCEED(0) 6: TAIL(7) 7: EXACT (10) 10: STAR(23) 11: ANYOF[\-A-Za-z+utf8::IsAlpha](0) 23: EXACT < >(25) 25: OPEN1(27) 27: PLUS(40) 28: ANYOF[.-:A-Za-z+utf8::IsAlnum](0) 40: CLOSE1(42) 42: END(0) anchored `neighbor' at 0 floating ` ' at 8..2147483647 (checking anchored) minlen 10 Offsets: [42] 8[4] 0[0] 5[4] 0[0] 8[0] 8[0] 10[8] 0[0] 0[0] 30[12] 18[12] 0[0] 0[0] 0[0] 0[0] 0[0] 0[0] 0[0] 0[0] 0[0] 0[0] 0[0] 31[1] 0[0] 32[1] 0[0] 48[15] 33[15] 0[0] 0[0] 0[0] 0[0] 0[0] 0[0] 0[0] 0[0] 0[0] 0[0] 0[0] 49[1] 0[0] 50[0] Guessing start of match, REx `(? | 1: UNLESSM[-4] 0 <> | 3: EXACT 4 | 5: SUCCEED could match... failed... Match failed Freeing REx: `"(?