2016-04-12 21 views
2

この構文は、構文vimscriptsでよく使用されています。たとえば、あなたは、vimの7.4(win7の)内のライン113上のファイル<vimdir>\syntax\python.vimでそれを見つけることができます。vimscript正規表現の文字列で+記号が何を意味する

syn match pythonEscape +\\[abfnrtv'"\\]+ contained 

+兆候はリテラル正規表現文字列の両端に何を意味していますされて私の素朴な疑問?

:help literal-string:help regexまたはsteve loshのbookで何も見つかりませんでした。私はどこを見ていたはずだと思いますか?

+0

@WiktorStribiżew正規表現の先頭にある「+」はどうでしょうか? –

+0

@WiktorStribiżewその前にアトムがありません –

+0

''' '' ''/'のようなリテラルの始まりと終わりを示しているようです – LazyLeopard

答えて

3

これは実際には正規表現の開始点であり、vimでは任意の文字を区切り文字として使用できます。私はドリューニールの著書「実践のVim」でこれを読んで覚えているが、私はここにも例が見つかりました:http://www.hacktux.com/vi/replace

は文字

のエスケープそれはあなたの一部である場合は、スラッシュをエスケープする必要があります検索文字列:

%s/http:\/\//https:\/\//g

どれ区切り

01を使用します

または、区切り記号を変更します。それは何でもかまいません!

コメントに sidyllから

%s!http://!https://!g

:h E146

ただ、完全を期すために、あなたは公式ヘルプの参照を追加することもできます。これは、最後のパラグラフの一つであるフラグセクションで説明されています。:h s_flags

+0

はい!区切り文字は私が検索に使っていたはずの単語でした!私はまた[これ](http://vim.wikia.com/wiki/Alternate_delimiters_for_the_replace_command) – LazyLeopard

+0

を見つけました。完全な説明のために、公式のヘルプリファレンス: ':h E146'を追加するとよいかもしれません。 flagsセクション、 ':h s_flags'の最後の段落の1つです。 – sidyll

関連する問題