.NET TIPS

文字列内の改行文字を削除するには?[C#、VB]

デジタルアドバンテージ 遠藤 孝信
2010/04/08

 ある文字列から改行文字(=改行コード)を取り除きたい場合は、文字列クラスのReplaceメソッドにより、改行文字を空文字列に置き換えればよい。

 改行文字は.NET Frameworkのクラス・ライブラリではEnvironmentクラス(System名前空間)のNewLineプロパティで定義されているため、これを利用すれば、Replaceメソッドによる改行文字の削除は次のように記述できる。

someString = someString.Replace(Environment.NewLine, "");
someString = someString.Replace(Environment.NewLine, "")
Environment.NewLineを使ったReplaceメソッドによる改行文字の削除(上:C#、下:VB)

 ただし上記のコードは、Windows以外の環境(例えばLinuxやMac)で作成されたファイル内の文字列を扱うような場合には、うまく機能しない可能性がある。(Windows上では)Environment.NewLineの実際の値はCR+LFの2bytesだが、ほかの環境ではLFあるいはCRのみの場合があるためだ*

* CR(キャリッジ・リターン)はC#では「"\r"」、VBでは「Chr(13)」、LF(ライン・フィード)はC#では「"\n"」、VBでは「Chr(10)」と記述できる。

 従って、文字列から改行コードを削除する場合には、CRとLFを個別に削除した方が確実であるといえる。このコードは次のように記述できる。

someString = someString.Replace("\r", "").Replace("\n", "");
someString = someString.Replace(Chr(13), "").Replace(Chr(10), "")
Replaceメソッドによる改行文字の削除(上:C#、下:VB)

 なお、Replaceメソッドによる文字列の削除については「TIPS:文字列から特定の文字列を取り除くには?」でも解説している。End of Article

カテゴリ:クラス・ライブラリ 処理対象:文字列
使用ライブラリ:Environmentクラス(System名前空間)
関連TIPS:文字列から特定の文字列を取り除くには?

この記事と関連性の高い別の.NET TIPS
複数の行を含む文字列から1行ずつ読み出すには?
OS環境ごとの改行文字列(\r\n|\n)を取得するには?
文字列から特定の文字列を取り除くには?
文字列のリソースに改行コードを埋め込むには?
正規表現を使って文字列から部分文字列を取り除くには?
このリストは、(株)デジタルアドバンテージが開発した
自動関連記事探索システム Jigsaw(ジグソー) により自動抽出したものです。
generated by

「.NET TIPS」

TechTargetジャパン

Insider.NET フォーラム 新着記事
  • エンドユーザーの言語設定を取得するには? (2014/10/23)
     エンドユーザーの言語設定を取得する方法はいくつかある。それらの方法で得られるものは何か、どの方法を使えばよいのかを本稿では解説する
  • WPF:DataGridなどにデータをソートして表示する (2014/10/21)
     WPFアプリでDataGridコントロールやListViewコントロールに表示されるデータを、プログラムコードの側からソートして表示する方法を解説する
  • 第1回 Forguncyに触ってみよう (2014/10/15)
     「Excel方眼紙」の「方眼紙」をもじった名前で話題となったForguncyの正式版がリリース。Forguncy連載スタート
  • WPF:リボンUIを実装するには? (2014/10/14)
     Windowsエクスプローラーなど、最近ではリボンを使用したアプリをよく目にするようになった。リボンを持ったWPFアプリを構築する方法を解説する
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

キャリアアップ


- PR -

イベントカレンダー

PickUpイベント

- PR -

アクセスランキング

もっと見る
- PR -

ホワイトペーパーTechTargetジャパン

ソリューションFLASH

「ITmedia マーケティング」新着記事

“プログラマティック”なSSPはパブリッシャーに福音をもたらすか?
米PubMaticのCo-Founder & CEOであるRajeev Goelはプライベートカンファレンス「AD REVEN...

NTTデータ、スマホと双方向通信するソーシャルサイネージソリューションを開発
NTTデータは10月22日、デジタルサイネージの視聴者が、自分のスマートフォンに鮮度の高い...

NTTコム オンライン、米ExactTargetとHubExchangeパートナーシップを締結
NTTコム オンライン・マーケティング・ソリューション(以下、NTTコム オンライン)は10...