Вы хотите найти word_1
, затем что угодно, любое количество раз, а затем word_2
. Это должно быть
word_1.*word_2
Вы, похоже, используете *
, поскольку он часто используется при поиске в командной строке, но в регулярных выражениях это квантификатор для предыдущего символа, то есть соответствует ему как минимум 0 раз. Например, регулярное выражение a*
будет соответствовать 0 или более a
с, тогда как регулярное выражение a+
будет соответствовать по крайней мере одному a
.
Метасимвол regex, означающий «соответствовать чему-либо», равен .
, поэтому .*
означает «соответствовать чему-либо, любое количество раз. См. perlrequick для краткого введения в тему.