2

この正規表現の質問には Perl を使用していますが、PHP にも当てはまるかどうかを知っておくとよいでしょう。

すべての print ステートメント、または PHP ファイル内の print で始まるすべてのものをコメント アウトする必要があります。次のようになります。

<?php
    // Description of file
    ...
    print("Foobar");
    // print("Foo");
    //print("bar");
    // Open and print file
    function printtemplate($file) {
    ...
    }
    ...
    printtemplate($file);
    ...  
?>

まず、次のような正規表現を定式化しました。

((?<!function )|(?<!//))print

|は OR であるため、明らかに機能しません。AND を探しているので、両方の否定的な後読みアサーションが true である必要があります。AND コンストラクトは正規表現に何らかの形で存在しますか、それともそれをシミュレートする方法はありますか?

最終的に、正規表現が適用された後、php ファイルは次のようになります。

<?php
    // Description of file
    ...
    //print("Foobar");
    // print("Foo");
    //print("bar");
    // Open and print file
    function printtemplate($file) {
    ...
    }
    ...
    //printtemplate($file);
    ...  
?>

どんな助けでも大歓迎です。ありがとうございました。

4

2 に答える 2