0

このクエリを置き換えるために、誰かが FOR NOTEPAD++ の正規表現を作成できますか:

mysql_query($query, $db);

置き換え:

$mysqli->query($query)

ただし、$query には別の変数名 ($query_2 など) を指定することもできるため、出力は次のようになります。

$mysqli->query($query2)

ありがとうございました!

4

2 に答える 2

3

Notepad++ 6.3.2 で動作します。これにより、一貫性のないスペースやタブ文字が使用される可能性があるという問題に対応できます。

検索パターン

mysql_query\(\s*\$([^,\s]+)\s*,\s*\$db\s*\);

置換

\$mysqli->query\(\$\1\);

置換ダイアログボックスで正規表現ラジオボタンが選択されていることを確認してください)。

テキストのテスト

mysql_query($query, $db);
mysql_query($SQL , $db);
mysql_query($query2,    $db);
mysql_query( $SQL_v4, $db );
mysql_query($AnotherSQL,$db);

出力テキスト

$mysqli->query($query);
$mysqli->query($SQL);
$mysqli->query($query2);
$mysqli->query($SQL_v4);
$mysqli->query($AnotherSQL);
于 2013-07-19T14:48:59.667 に答える
1
$input = 'mysql_query($asdf, $db);';
$input = preg_replace('/mysql_query\(\$(\w+), \$db\);/','\$mysqli->query(\$$1);',$input);
echo $input;

出力$mysqli->query($asdf);

編集:

Notepad ++で、これを試してください:

  1. 何を見つける:mysql_query\(\$(\w+), *\$db\);

  2. と置換する:\$mysqli->query\(\$$1\);

于 2013-07-18T22:25:50.903 に答える