正規表現の一致をバッファに入れたいのですが、より単純な例のy :.put myNewBuffer
戻りメッセージを取得できません[line] [put] [buffer]
。つまり、バッファに何かを入れますか?
したがって、正規表現とexの場合
- どういう意味ですか
(.,.)~ replaces the previous regular expression with the previous replacement pattern from a substitution
?いくつかの便利な例、ソース引用する。 - exで正規表現を使用する方法の例を挙げてください。たとえば、
h
最初の文字で始まる単語と文字で終わる単語の間の領域をバッファリングする方法はs
? - 行の最後の項目(つまり、終わりの単語が行の終わりまたは終わりの単語である場合)は
s
どうなりますか$
?
答え1
vimのマニュアルはおそらく以前のExマニュアルよりも良く、最新のものでしょう。ほとんどの最新のLinuxディストリビューションでは、vimに付属のexを使用します。 Vimでヘルプを表示するには:helpを使用し、特定のコマンド(Exコマンドなど)のヘルプを表示するにはを使用します:help :~
。 Vimでは、すべてのExコマンドの前に次のものが続きます。 (.,.)は、2,8で指定できる範囲を表すために使用されているようです。つまり、ファイルの各行の2〜8行目または1、$($は最後の行を意味します)を意味します。 Vimの入力とは、ファイル:1,$~
の各行に〜Exコマンドを実行することを意味します。
Vimが言うのは、
:~
「同じ置換文字列を使用しますが、最後に使用した検索パターンを使用して最後の置換を繰り返します」置換は通常、次のように書かれます。:s/pattern/string/
これは、1行でパターンを見つけて文字列に置き換えます。:~
最後の置換コマンドを繰り返しますが、最後に検索されたパターンを使用します。次のパターンを試してください。
/\<h.*s\>
/はEx / Vimで検索を開始するために使用されます。 \ <は単語の先頭に一致し、hはhに一致し、.*は単一の文字に一致し、*は文字を0回以上繰り返すため、.*は一致を意味します。ゼロまたは複数の文字。 sはsと一致し、\>は単語の終わりと一致します。
- このパターンを試してください。
/words\?$
パターンマッチングに使用される場合、$ は行の終わりを表し、 \? は前の文字がオプションであることを示します。これは行の末尾にある1つ以上の単語と一致します。