.net column

.NET開発者のためのブログメディア

サクラエディタで使える改行コードについて解説!改行コードと「正規表現」とは?

2021年01月28日

SE
サクラエディタの使い方が知りたいです。

PM
サクラエディは日本語テキストエディタです。サクラエディタの改行コードいついて見ていきましょう。

サクラエディタについて


まず「サクラエディタ」とは、Windowsで使用することができる日本語テキストエディタです。

Windowsの既存の「メモ帳」との相違点は、メモ帳のシンプルな機能に対して、サクラエディタは自分で好きなようにカスタマイズ出来る範囲が大きいことです。特に、C++やHTMLなどに対応したカスタマイズが出来ることが一番の相違点として挙げられます。

様々な機能を持つサクラエディタですが、今回はその中でも「改行コード」についてご紹介させていただきます。

改行コードとは?

改行コードとは、ワープロ専用機やコンピュータなどで、改行を表す制御文字であると解説されています。

元々はタイプライターの改行で使われていた用語が、制御文字に使われるようになりました。現在のキーボードの英字配置がタイプライターの文字配置と同じですから、意外とコンピュータ用語はタイプライター起源のものが残っていたりします。

このため、改行コードも「CR(キャリッジリターン)」と「LF(ラインフィード)」というタイプライター用語のまま名前が残っています。

用語の解説についてはタイプライター用語になるので割愛しますが、この2つがサクラエディタでも使用されています。

詳しくは「サクラエディタで使える改行コードについて」にて紹介します。

サクラエディタで使える改行コードについて

サクラエディタで使える改行コードは3種類存在します。

「CRLF」「LF」「CR」の3種類です。

「LF」と「CR」は元々タイプライター用語であると紹介しましたが、「CRLF」は存在していませんでした。この「CRLF」はWindowsで改行すると自動的に使われる改行コードです。つまり、Windows上で動作するソフト等で改行をした場合は、基本はこのコードが使われています。

したがって、基本はサクラエディタも設定しない限り、改行は「CRLF」が使われています。

ちなみに、「CRLF」は「CR+LF」とも呼ばれています。両方の改行コードはセットで使われていますので、そのまま「CRLF」と表現されることが多く、実際にサクラエディタは「CRLF」が使用されています。

つまり、設定をすればサクラエディタでも改行をすると「CR」や「LF」の改行コードを自動的に使用する事も出来ます。

サクラエディタではこの改行コードを視覚的に確認することが出来ます。

そして、この改行コードを検索/置換することも出来ます。

3種類の改行コードについて

そもそも、なぜ改行コードが3つ存在するかという話ですが、前述したタイプライターが起源ということと、元々は「CR(キャリッジリターン)」は文頭最初にカーソルを持ってきて「LF(ラインフィード)」は下段に下がるという別々の処理を行っていました。

つまり、下段に下がって文頭にカーソルを移動させる今の改行とは違い、改行には2つの処理が必要だったのです。

コンピュータの歴史が進み、2つの処理が必要だった改行処理を1つの処理で出来るようになったとき、Microsoft社のWindowsは2動作を行っているため「CRLF」というコードを採用し、Apple社のMacは「CR」を採用し、のちの新型OSとUNIX系OSは「LF」を採用しました。

このため、現在ではOSによって、異なる3つの改行コードが存在することになったのです。

改行コードと「正規表現」

サクラエディタには「正規表現」と記述されている単語があります。

正規表現とはざっくりとした解説になりますが、サクラエディタにおいてはプログラムで使用するときに使用する記述と認識してよいでしょう。

サクラエディタではいくつもの正規表現が取り扱われていますが、今回は改行コードのみ記述します。

対応する改行コードと正規表現は以下のテーブルに記載します。

改行コード 正規表現
CRLF \r\n
LF \n
CR \r

正規表現を使った小技

サクラエディタで改行コードは視覚的に確認が出来ると上記で記載しましたが、サクラエディタにて改行を行うと、その改行マークが改行コードごとに違うからです。

視覚的に違うため、改行コードの検索が行なえます。

「CRLF」は「\r\n」、「LF」は「\n」、「CR」は「\r」と検索すれば、該当する改行コード部分の色が変わります。色は設定によって変わりますが、初期状態で行う場合は黄色に色付けされています。

検索する場合は、検索ボックスを表示させたときに「正規表現」というチェックボックスがありますので、そのチェックボックスにチェックを入れて検索を行いましょう。

そして、検索が出来るということは置換も出来ます。

置換方法も検索する場合と同じです。

置換ボックスを表示させたときに「正規表現」というチェックボックスがありますので、そのチェックボックスにチェックを入れて、置換前の改行コードと置換後の改行コード、または文字を入力します。すると、改行コードが指定したものに変更されます。

かなり極端な例ですが、上記2つの方法を使って「プログラムの中で改行コードを入力して、出力したデータの中にそれぞれ違う改行コードが混じってしまったので、緊急的に修正を行いたい」という場合でも、該当する改行コードを検索、および修正することが出来ます。

改行コードを指定して保存する

「正規表現を使った小技」で改行コードを検索/置換出来る方法を紹介しましたが、サクラエディタでは改行コードを指定して保存することが出来ます。

保存するときに、ファイル名を付けるダイアログボックスが表示されますが、その左下に「改行コード」と記載されているドロップダウンリストが存在します。

初期設定では「変換なし」になっています。

この「変換なし」は文字通り指定されていませんので、改行コードは入力されたまま保存されます。

例えば、初期状態のまま改行コードが「CRLF」で入力している状態で、改行コードが「LF」のデータをコピーしてきて貼り付け、更に改行コードが「CR」のデータをコピーしてきて貼り付けて保存した場合、この3種類の改行コードが混在するデータが出来上がります。

なお、実際にこの状態で保存しようとすると、サクラエディタは改行コードが混在しているため、「CRLFに統一しますか?」と確認ダイアログを出してくれます。混在データで保存する場合は、このダイアログが出てきた場合「いいえ」を押して保存しましょう。混在データで保存することが出来ます。

※ただし混在したままデータを保存する場合は、筆者が実際に確認するために保存したときに、改行のみのデータで、なおかつ2行ずつ改行コードが違うデータという状況で保存しました。その結果、「CRLF」の改行コードは問題ありませんでしたが、「LF」と「CR」では1行減る現象を確認しましたので、正確なデータの保存を求められる場合は保証出来ない保存方法です。(サクラエディタ Ver. 2.2.0.1にて確認)

この「変換しない」を「CR+LF」「LF(UNIX)」「CR(Mac)」に変更して保存すると、改行がそれぞれ「CRLF」「LF」「CR」の改行コードになりますので、改行コードを統一して保存することができます。

例えば「LF」「CR」が混在するデータを保存する時に「CRLF」で保存した場合、すべての改行コードが「CRLF」で保存されます。もちろん「CRLF」の改行コードデータを別の改行コードで保存することも可能です。

SE
サクラエディタの改行コードはCRLF・LF・CRの3種類があるんですね。

PM
実際に自分でコードを書いてサクラエディタを覚えていきましょう。

まとめ

ここまで、サクラエディタの改行コードについて記載させていただきました。

サクラエディタが使える正規表現は改行コードだけでありませんし、無料のテキストエディタですが、かなり様々な機能が備わっています。

是非自分の使いやすいようにカスタマイズして、趣味やお仕事などに役立ててください。


.NET分野でのキャリアアップをお考えの方は、現在募集中の求人情報をご覧ください。

また、直接のエントリーも受け付けております。

エントリー(応募フォーム)

Search

Popular

reccomended

Categories

Tags