1

引用符で囲まれているすべてのフレーズを検索して、それらを複製したいと思います。

Emacsでは、私の検索は次のようになります。

M-x replace-regexp <RETURN> "*" <RETURN> $& $& <RETURN>

しかし、それは機能しません...

4

1 に答える 1

5

"*"引用符で区切られた文字列と一致しません。行内の任意の(ゼロ以外の)引用符に一致します。

正規表現で*は、は修飾子であり、ファイル名パターンのワイルドカードではありません。これは、「前のパターンの0以上に一致する」ことを意味し、"*"「0以上の引用符の後に引用符が続く」、つまり、連続した任意の数の引用符も意味します。

「anything」の通常の正規表現は、.*0個以上の「anycharacter」(.)に一致するものです。ただし、これには引用符が含まれます。".*"最初の引用符から最後の引用符までのすべてを1つの大きな文字列として一致させます。必要なのは"[^"]*"、引用符に一致し、その後に任意の数の非引用符が続き、その後に別の引用符が続く、です。

また、一致するパターンは\&、ではなく$&です。これはうまくいくかもしれません:

M-x replace-regexp <RETURN> "[^"]*" <RETURN> \& \& <RETURN>
于 2012-11-06T02:46:14.000 に答える