0

だから、私はvimでこの検索を行っています:

/\(\(unum\)\|\(player\)=\)\@<!\"1\"

予想どおり、次の行には一致しません。

player="1" 

ただし、次の行に一致します。

unum="1" 

私は何を間違っていますか?このすべてを否定するアトムではありません:\(\(unum\)\|\(player\)=\)

自然にちょうどやっている:/\(\(unum\)\|\(player\)=\)マッチunum=or player=.

4

1 に答える 1

5

あなたのパターンは

\(
    \(unum\)\|
    \(player\)=
\)\@<!"1"

これはと同等です

\(
    \(unum\)\|
    \(player=\)
\)\@<!"1"

そして、そうでなければならない

\(
    \(unum\|player\)=
\)\@<!"1"

閉じ括弧と開き括弧を 1 つずつ削除するだけです。

そして、書くこと\"は奇妙です: エスケープしなければならない状況では、"スラッシュもエスケープする必要があります。

于 2010-04-15T16:47:55.910 に答える