• ベストアンサー

秀丸マクロ: 正規表現で表された文字列を含むフレーズの直後に改行を挿入するには

the ratio of .+ to .+ is このis の直後に改行\nを挿入するには、 秀丸マクロでどのように表現したらいいでしょうか? .+の部分は、任意の長さの1後以上の英数字(スペース含む) の意味です。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • kkk1024
  • ベストアンサー率33% (42/127)
回答No.5

こんばんは。No.4です。 えっと、私英文を見る機会はあるのですが、作文はしないのでちょっとどんな表現の可能性があるのかまで分かっていません。 とりあえず、可能性としてどんな文法(?)があるのか提示していただければそれが正規表現により変換が可能かどうかをどなたかが判断することは可能かと思います。 私の場合正規表現の変換も英文も部分的に聞き齧っているだけですのでできるかどうかの判断まではつきかねます。 とりあえず補足いただいた以下の英文を 原文 the ratio of A to B is, to its utmost limit, 0.3... の形から the ratio of A to B is , to its utmost limit, 0.3... にするのであれば、 No.2さんの変換 >the ratio of (.+) to (.+) is 変換前 >the ratio of \1 to \2 is\n 変換後 で十分ですよ。 そうでない場合はどこに改行を入れたいかによりますので、何とも言えませんが。 良く考えたら、私の回答は全く役に立たないことに気がつきました。 No.2さんの回答で私の想定していた英文も検索できることが分かりました。(^^; the ratio of ..... to ......., to ....... is the ratio of A to B is, to its utmost limit, 0.3... the ratio of A to B is 3つともNo.2さんの回答で「the ratio of A to」から「is」の部分までを変換前とし「is」の直後に改行を入れることが可能でした。 isome2009様が心配されているのは、 the ratio of A to B is, to its utmost limit, 0.3... の英文で、 the ratio of A to B is までではなく ..., to its utmost limit, 0.3... のどこかまで変換元として検索してしまうのではないか? ということでしょうか。 であればとりあえず私の利用している秀丸では the ratio of A to B is までを変換元として検索しておりますので問題ないかと思います。 考えうる原文のパターンとその期待する結果を示していただければ、私が分かる範囲でアドバイスは可能ですが、それほど知識があるわけではありませんので見てみないことには何とも言えません。 回答になっておらず、申し訳ありません。

isome2009
質問者

お礼

回答をいただいた皆様 大変ありがとうございました。 正規表現は奥が深そうでして これからまだまだ勉強していきます。 本当にありがとうござあいました。

すると、全ての回答が全文表示されます。

その他の回答 (4)

  • kkk1024
  • ベストアンサー率33% (42/127)
回答No.4

こんばんは。 締め切られてなかったのでその隙に(((((^^) No.2の方と同様Version7.07利用しております。 the ratio of ..... to ......., to... の件、 the ratio of ..... to ......., to ....... is の表現変換ならば、 the ratio of (.+) to(.+)is 変換前 the ratio of \1 to\2is\n 変換後 でいけると思いますよ。 英文と正確な用途(変換文章)良く分かってないので何とも言えませんが。 皆さん(特にNo.2)の回答に乗っかってみました。(^^; 考え方としては「the ratio of ..... to」と「is」の間は何でも有です。 the ratio of ..... to???is こんなイメージ。 英文対応については、私は利用してませんが秀丸サポートに何かあるかもしれません。 サイトはメニュー[その他(O)]-[秀丸エディタについて(A)...]で表示されます。 参考になれば幸いです。

isome2009
質問者

補足

クローズさせるのもなんだと思って おいておいたのですが、 いろいろアドバイスありがとうございます。 ところで、 the ratio of A to B is, to its utmost limit, 0.3... というのが例えば、toが連続する英文として考えられます。 この場合、ratioからtoまでの距離は、後ろのtoが長いです から、この後ろのtoにマッチしないか。。。 という心配はないでしょうか? この場合もそうですが、途中のフレーズを保護することは できるでしょうか? なんか、いろいろ考えないといけないですね。。

すると、全ての回答が全文表示されます。
  • sakusaker7
  • ベストアンサー率62% (800/1280)
回答No.3

該当するフレーズが一行に二回以上現れる可能性はないんでしょうか? もし二回以上でてくるとその正規表現ではおかしなことになると思います。 あとマクロでということなので replacedialog "the ratio of (.+?) to (.+?) is", "the ratio of \\1 to \\2 is\\n", regular とか。 replace* はほかにもありますので、適当に好きなのを選択してください。

isome2009
質問者

補足

>該当するフレーズが一行に二回以上現れる可能性はないんでしょうか? 鋭いご指摘:> はい、ありますね。 本当ならば、the ratio of ..... to ......., to... というパターンがありますね。 AとBの比率を1.5にして、~するようにする(後ろのto) とか。 このあたり、英文に則した正規表現のいいテキストが ないものかと思うのですけれど。 いろいろありがとうございます。

すると、全ての回答が全文表示されます。
  • tatsu99
  • ベストアンサー率52% (391/751)
回答No.2

the ratio of (.+) to (.+) is 変換前 the ratio of \1 to \2 is\n 変換後 で指定してみてください。 当方Version7.07で確認済み。 だめな場合は、最新の秀丸をダウンロードしてやってみてください。

isome2009
質問者

お礼

うまくいきました。 どうもありがとうございました。 感謝です。

すると、全ての回答が全文表示されます。
  • akamanbo
  • ベストアンサー率17% (462/2680)
回答No.1

置換なら the ratio of \.\+ to \.\+ is を the ratio of .+ to .+ is\n だろうけど、マクロってことはこれでは足りない?

isome2009
質問者

補足

回答ありがとうございます。 えーと、これだと 置換前は the ratio of \.\+ to \.\+ is でヒットしますが、 置換後が そのまま the ratio of .+ to .+ is となってしまいます。 .+の部分に、元の文章の言葉をそのままもってきたい んです。。。 例えば、 the ratio of tate to yoko is となっていることが好ましいわけです。 説明不足だったようで申し訳ございません。

すると、全ての回答が全文表示されます。

関連するQ&A