私の組織のような構文で、社内の言語を持っている間単語のインスタンス:Vimの正規表現:キャプチャ*最初の*文字
cmo/create/mo1///tri
createpts/brick/xyz/2,2,2/0.,0.,0./1.,1.,1./1,1,1
私はVimの構文ファイルを書いています、とをキャプチャしたいと思います最初に 2文字(この場合は/
)、で囲まれた単語のインスタンス、は文字自体をキャプチャします。
つまり、正規表現は
create
brick
私のソリューションは、これまでのところ、このパターンを使用することで、上記の行から、キャプチャします:
[,/=" "].\{-}[,/=" "]
しかし/this/and/this/and/this
から、それはキャプチャします/this/
and
/this/
and
/this/
。
この問題は、(i)私の現在の解決策は貪欲で、(ii)/
文字もキャプチャします。
ありがとうございます!
肯定的な視点と肯定的な先読みを使用します。私はvimの構文が正のlookbehindの場合は\ @<= '、肯定的な先読の場合は' \ @ = 'であると信じています – ctwheels
' \ zs'マッチリセッタ '^(?:\ w +)?/ \ zs \ w + )\ @ = ' – revo
^、あなたは先読みを避けるために' [^ /] * 'を使い、グループを避けるために' \ w * 'を使うことができます。 – Ryan