Applekdz
@Applekdz

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

EmEditorなどの正規表現、鬼雲でキャプチャー番号の書き方を教えてください。

鬼雲で正規表現のキャプチャー番号の書き方を教えてください。
サクラエディタなどでは、たとえば佐藤花子だと

検索
(佐藤)(花子)

置換
${2}${1}

これで花子佐藤に置換されます。
ただ、EmEditorの鬼雲ではこの書き方が使えませんでした。
\{2}\{1}
これでも出来ませんでした。
10個以上のキャプチャーで次に0が来る場合は10番目なのか1番目の次に0を付けているだけなのかの区別が付かないので必要になります。
この質問はAIでも答えてくれませんでしたので一般的ではないでしょうか?
よろしくお願いいたします。

0

3Answer

10個以上のキャプチャーで次に0が来る場合は10番目なのか1番目の次に0を付けているだけなのかの区別が付かないので必要になります。

番号ではできませんが、名前付きキャプチャを使えば10個以上に対応できます。キャプチャを (?<キャプチャ名>パターン) と書き、 \k<キャプチャ名> で置換します。

例:

  • 検索 (?<myoji>佐藤)(?<namae>花子)
  • 置換 \k<namae>\k<myoji>
2Like

Comments

  1. @Applekdz

    Questioner

    ありがとうございます。出来ました。
    御厚意、感謝しております。

EmEditor では、正規表現の 10 個以上の後方参照は、次のフォームで可能です。

\k<10>, \k<11>, \k<12>, ...

置換表現では、次のフォームも使用できます:

$10, $11, $12, ...

これらの機能は、v19.1 で追加されました。

2Like

perl表現のようです。

置換のグルーピングは
¥2¥1

なのでは?

エディタによっては次のような場合があります。
検索
¥(佐藤¥)¥(花子¥)

1Like

Comments

  1. @Applekdz

    Questioner

    ご回答ありがとうございます。
    普通に書くとそのとおりだと思いますが、キャプチャーの10番目以降がある場合で次に0がつくと\10は1番目の次に0を付けたのか10番目なのかの区別がわからないため、明確に書くためにはどう書けば良いのかわからないのでキャプチャー番号だけを明確に書きたいという質問になります。
    ご存じでしたら追加でお願いいたします。

  2. \10が使える言語はpython3,ruby...だったように記憶してます。awkの拡張が対応してたか?曖昧な記憶ですみません。

    EmEditorがperlレベルの正規表現なら¥9まででは?

  3. @Applekdz

    Questioner

    ありがとうございます。
    EmEditorは9番目までしかキャプチャーできないのでしたか?それは知りませんでした。
    そうだとしたら出来る範囲が限られてしまいます。
    よろしくお願いいたします。

  4. ruby使えたような記憶が? @usaiさんの方式でなく?pythonかも?

    鬼車、鬼雲はruby,perlのエンジンなのでEmEditorにエンジンの変更が可能なら、拡張正規表現が利用できるとおもいます。

    残念ながら、私は経験がありません。

    世の中のは、次のような猛者もいます。

  5. @Applekdz

    Questioner

    勉強になりました。ありがとうございます。

Your answer might help someone💌