人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

秀丸の質問です。あるテキストで2つ以上空白行があれば1つの空白行にしたいです。空白行が1行しかない場合は、そのままの状態とします。例えば下記のような文書があるとします。There'sとa ladyとの間は空白行が1行しかないので、このままの状態にします。a lady who'sからsureまでは空白行が3行あるので空白行を2行消して、1行にしたいです。この場合、テキストに5行の空白行があったり、10行の空白行があるかも知れません。これを1行の空白行にしたいです。正規表現でできるでしょうか?
この場合、空白行にもスペースが潜んでいるかもしれないのです。
There's

a lady who's



sure

●質問者: silverspring
●カテゴリ:コンピュータ インターネット
✍キーワード:LADY WHO いるか テキスト 正規表現
○ 状態 :終了
└ 回答数 : 3/3件

▽最新の回答へ

1 ● talepanda
●27ポイント ベストアンサー

検索: (^[ \t]*\n)[ \t\n]*

置換: \1

一行目の空白行のスペースなども削除したいなら、

検索: ^[ \t]*\n[ \t\n]*

置換: \1

http://www.google.com

◎質問者からの返答

うぉ?できました。ありがとうございます。正規表現の意味まで解説してくれると嬉しかとです。


2 ● talepanda
●23ポイント

一行目の空白行のスペースなども削除したいなら、

検索: ^[ \t]*\n[ \t\n]*

置換: \1

間違えました。こっちは

置換: \n

です。

http://www.google.com


3 ● きゃづみぃ
●30ポイント

マクロですが・・・。

次の内容を テキストファイルに保存して 名前を a.mac とかにします。

ファイルは、秀丸が入っているところに 入れたらいいでしょう。

空白は 1つになってしまいますが・・・。


replaceallfast " " , " ";

while( result > 0 ) {

replaceallfast " " , " ";

}

replaceallfast " " , " ";

while( result > 0 ) {

replaceallfast " " , " ";

}

replaceallfast "\\n \\n" , "\\n",regular;

while( result > 0 ) {

replaceallfast "\\n \\n" , "\\n",regular;

}

replaceallfast "\\n\\n\\n" , "\\n\\n",regular;

while( result > 0 ) {

replaceallfast "\\n\\n\\n" , "\\n\\n",regular;

}




http://hide.maruo.co.jp/lib/macro/nashi.html

◎質問者からの返答

オーイエス!これもかなりナイスですね。ありがとうございます!

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ