5

私は egrep を使用して、perforce NAS のスクリプトを調べています。

RCP と RSH を使用する場所を見つけようとしています....私が抱えている問題は、1) REGEX が苦手です。2) 興味のないがらくたを拾っています。たとえば、ファイルに strcpy という単語が含まれている場合、RCP で拾い上げます..または所有権..RSH でヒットします。

明らかに私はそれらに興味がありませんが、所有権または strcpy という単語に基づいて行を除外したくありません...それらは組み合わせて使用​​ される可能性があるため...そして完全なリストではないからです。

これが私の正規表現です

 'ftp|rcp|rsh' 

これらを FTP でヒットするように変更するにはどうすればよいですか?

だから合わせたいもの。

ftp
`ftp`
/ftp/
"PUNCT"FTP"PUNCT"
4

2 に答える 2

8

多分あなたはこのようなものが必要です:

\b< - これは単語の境界です

\bpattern\b<- このパターンは のみpatternに一致しますが、一致しませんotherbigpatternthatyounotneed

于 2012-09-20T15:06:32.620 に答える
6

いくつかのメタ文字があります:

  • \b単語境界
  • \<ワードスタート
  • \>単語の終わり

したがって、1 つの可能な正規表現は次のとおりです。\<(ftp|rcp|rsh)\>

于 2012-09-20T15:09:33.020 に答える