|
でるもんた・いいじまです。追記です。
>> このようなテキストを読み易くするために、
>> 行頭キーワード2017年で改行させるには
>> ^2017年 → \n2017年
>> で「正規表現」置換すれば済む訳ですが、
> ...
>> のようにその行頭キーワードの1行上で改行させるような
>> 置換はできないでしょうか?
>
> ちょっと手元で試してみました。
>
> ^.+\n2017年 → \n\0
> でいけるようです。
> .+ と書いた場合、デフォルトでは改行にはヒットしません。
>
> ちなみに、2017年以外の記事でも大丈夫なようにするには、
> ^.+\n\d+年 → \n\0
> としてください。\d は [0-9] と同義です。
すみません追記。
当然ですが、この正規表現だと、本文の頭に「2017年には…」などと
書いてある部分にもヒットしてしまいます。それがたまに発生する
程度なら手作業で修正してもいいと思いますが、頻発するようなら、
^.+\n\d+年\d+月\d+日 → \n\0
とか
^.+\n\d+年\d+月\d+日 \d+:\d+:\d+ → \n\0
とかいろいろ工夫してみてください。
あと、これだけ長くなる場合には、この置換自体をマクロにして
しまったほうがいいと思います。こんな感じですかね。
setcompatiblemode 0x20000;
begingroupundo;
replaceallfast "^.+\\n\\d+年\\d+月\\d+日", "\\n\\0", regular;
endgroupundo;
ちなみに、最近のバージョンなら @"..." という記法が使えます
ので、上記の3行目は
replaceallfast @"^.+\n\d+年\d+月\d+日", @"\n\0", regular;
とも書けます。古いバージョンの秀丸を気にしなくていいなら、
この @"..." を使ったほうが見通しがよくなると思います。
|
|