perl regex - (\ s * / / \ s *)で始まらないfoobarを一致させる方法

perl regex - (\ s * / / \ s *)で始まらないfoobarを一致させる方法

基本的に、次のようにコメントされていない行でfoobarを探したいと思います。

// foobar      # do not match me
 foobar        # match me
 otherfoobar   # do not match me

コメント行を一致させるには、次を使用します。^(\s*//\s*)\bfoobar\b.*$

コメントアウトされていない行を一致させる方法は?

メモ:

不要な努力を避けるために、答えを「^...$」に制限してください。これは、一致のためにPerlに送信された文字列内でのみ実行する必要があります。

また、foobarは\ bfoobar \ bのように完全に一致する必要があります。

最後に、 \bfoobar\b の前には、スペースやコメントの署名を除く任意の文字を含めないでください。

ベストアンサー1

foobaraの右側にaがない場合は、次//のように表現できます。

^(?:(?!//).)*\bfoobar\b

*これは、ゼロ個以上の()文字()で構成されるシーケンスです。各文字は.シーケンスの先頭にありません()、その後に単語の境界で区切られた文字が続きます。//(?!//)foobar

おすすめ記事