Отобразите регулярное выражение в части строки, затем посмотрите назад и замените (а также удалите эту строку) - PullRequest
0 голосов
/ 08 июня 2018

У меня есть строка с этим форматом:

                $something = $gateway->execute($query) or die(mysql_error() . " here");
                $id  = mysql_insert_id();

Это сложно, потому что я хочу закончить с этим:

$id = $gateway->execute($query) or die(mysql_error() . " here");

Я попытался сопоставить строку mysql_insert_idЗатем я посмотрел на $ gateway-> execute и заменил $ что-то на захваченный $ id, но я не могу этого понять.Это вообще возможно?Я также хочу удалить строку mysql_insert_id, но всегда могу выполнить grep и заменить и заменить на пустую строку.

Спасибо.

1 Ответ

0 голосов
/ 08 июня 2018

Вы можете сопоставить элементы боча и собрать их при необходимости следующим образом:

\$\w+\s+=\s+(\$gateway->execute\(\$query\)\s+or\s+die\(mysql_error\(\)\s+\.\s+"\s+here"\);).*(\$id)\s+=\s+mysql_insert_id\(\);

Демо

Это можно упростить, если$ gateway-> .. part является фиксированной строкой.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...