重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

SAKURAエディタで正規表現を使えるようにしたんですが、改行の消し方が分かりません。

---------------------------------------------
a
aaaa
---------------------------------------------
↓↓↓↓↓
---------------------------------------------
aaaaa
---------------------------------------------

という風に置換したいんですが、どうすればいいのでしょうか?
回答の程よろしくお願い致します。

A 回答 (4件)

こんにちは。



他の回答者の方々が言われているように、サクラエディタの正規表現で表せる
改行コードのパターンとしては、以下の4つのパターンが考えられます。
1)\r\n : CR+LF
2)\n\r : LF+CR
3)\r  : CRのみ
4)\n  : LFのみ

ですので、置換パターンとしては、例えば、

1)改行コードが[CR+LF]のテキストの改行を削除する場合
 検索文字列: \r\n
 置換文字列: 空欄(なにも指定しない)

2)改行コードが[LF]のみのテキストの改行を削除する場合
 検索文字列: \n
 置換文字列: 空欄(なにも指定しない)

3)全ての改行コードパターンで改行を削除する場合
 検索文字列: (\r\n|\n\r|\n|\r)
 置換文字列: 空欄(なにも指定しない)

などのような指定を行えば良いと思います。

ご提示のような、1行の先頭に文字'a'がある行の改行のみ削除する場合で、
かつ、改行コードが[CR+LF]だった場合では、

 検索文字列: (^a)\r\n
 置換文字列: $1 または \1

とすれば良いと思います。

以上です。
    • good
    • 0
この回答へのお礼

遅くなりました。

>(\r\n|\n\r|\n|\r)

これです。僕が知りたかったのはこれです!!

CRってのが邪魔をしていたんですか・・・あぁ、わかりました。

回答ありがとうございます。

お礼日時:2010/04/25 11:59

#3です。


すみません。#3の内容で以下の訂正があります。

【誤】
ご提示のような、1行の先頭に文字'a'がある行の改行のみ削除する場合で、
かつ、改行コードが[CR+LF]だった場合では、

【正】
ご提示のような、1行の先頭に文字'a'が一文字のみある行の改行のみ削除する場合で、
かつ、改行コードが[CR+LF]だった場合では、

失礼致しました。
    • good
    • 0

改行を表す特別な正規表現はありません。



正規表現を使うプログラムごとで改行をどう表すかを決めています。
多くのプログラムでは\nですが、SAKURAエディタがどうなのか?
いずれにせよ、正規表現の問題ではなく、SAKURAエディタの使い方の問題です。
ヘルプに書いてませんか?

改行を扱えない。つまり行をまたいだ処理は出来ないと言う可能性もあります。
    • good
    • 0
この回答へのお礼

遅くなりました。

つまり元からできないかも知れないって事ですよね・・・ヘルプ見てみます。

回答ありがとうございました。

お礼日時:2010/04/25 11:55

正規表現で改行は


\n
ですが、それでは駄目なのでしょうか?
    • good
    • 0
この回答へのお礼

遅れました。

そうですね・・・確かにそうなんですよね・・・けど、僕が求めていた答えではないです。

回答ありがとうございました。

お礼日時:2010/04/25 11:53

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!