[Rust]文字列(string)の改行を削除するには?

どうも、ちょげ(@chogetarou)です。

文字列(string)の改行を削除する方法を紹介します。

スポンサーリンク

方法

文字列(string)の改行を削除する方法は、2つあります。

lines()

ひとつは、lines()を使う方法です。

まず、文字列からlines()を呼び出します。

そして、lines()からcollect::<String>()を呼びします。

//text=対象の文字列
let result: String = text.lines().collect::<String>();

上記のcollect()は、lines()を呼び出した文字列(string)の改行を削除した文字列(string型)を生成します。

使用例

fn main() {
    let text: &str = "He\nl\r\nlo,\nWor\nld.";
    
    let result: String = text.lines().collect::<String>();
    
    println!("{:?}", result);
}
出力:
Hello,World.

replace()

もうひとつは、replace()を使う方法です。

まず、文字列からreplace()を呼び出します。

そして、replace()の第1引数に改行の文字列、第2引数に空文字(””)を指定します。

//text=対象の文字列
let result: String = text.replace("\n", "");

上記のreplace()は、呼び出した文字列(string)の改行を削除した文字列を生成します。

使用例

fn main() {
    let text: &str = "He\nllo,\nWor\nld.";
    
    let result: String = text.replace("\n", "");
    
    println!("{:?}", result);
}
出力:
Hello,World.

まとめ

文字列(string)の改行を削除する方法は、次の2つです。

  • lines()を使う方法
    let result: String = text.lines().collect::<String>();
  • replace()を使う方法
    let result: String = text.replace("\n", "");

コメント

タイトルとURLをコピーしました