Llama-2が登場!8bit+LoRAでRLHFファインチューニングを試す方法はこちら

【Python】文字列から改行や空白などを取り除く方法を解説!文中の改行や空白をどのように処理すればいいのかを教えます!

今回は、文字列の中の改行や空白を取り除く方法を解説します。

メモ帳の機能で文字列の長さを返すようにしようと考えて、改行や空白がカウントされてうまくいかなかったら困りますよね。そんな時に活躍するのが今回紹介する方法です。

目次

改行や空白を取り除く方法

さっそく取り除く方法を紹介します。次のコードは文字列から改行と空白を取り除くコードになります。

replace(“\n”, “”)は”\n”を””に置き換える機能を持っています。

text = "取り除きたい文章をここに入力してください"
# 改行を取り除いた文章 
# \と¥は同じ
text1 = text.replace("\n", "")
# 空白を取り除いた文章
text2 = text.replace(" ", "")
# 改行と空白を取り除いた文章
text3 = text.replace("\n", "").replace(" ", "")

\nなどはエスケープシーケンスと呼ばれています。

エスケープシーケンス一覧

詳しく知りたい方はこちらのドキュメントをお読みください。

エスケープシーケンス意味
\newlineバックスラッシュと改行文字が無視されます
\\バックスラッシュ (\)
\'一重引用符 (')
\"二重引用符 (")
\aASCII 端末ベル (BEL)
\bASCII バックスペース (BS)
\fASCII フォームフィード (FF)
\nASCII 行送り (LF)
\rASCII 復帰 (CR)
\tASCII 水平タブ (TAB)
\vASCII 垂直タブ (VT)
\ooo8 進数値 ooo を持つ文字
\xhh16 進数値 hh を持つ文字

この表の説明を見てもよく分からないので代表的なエスケープシーケンスを使って実行した結果を表示させます。

\nをprintした場合

\nの入った文字列を表示させると次のようになります。

print("1\n2\n3\n4")

# 実行結果
"""
1
2
3
4
"""

\tをprintした場合

\tの入った文字列を表示させると次のようになります。

print("1\t2\t3\t4")

# 実行結果
"""
1    2    3    4
"""

“をprintしたい場合

“をprintしたい場合は次のようにします。

print("\"")

# 実行結果
"""
"
"""

文字列の中に改行が入っているか調べる方法

おまけとして、文字列の中に改行や空白が入っているか調べる方法を紹介します。

次のように条件文を設定すると調べることができます。

text="""
今日は買い物に行った。
明日は何をしよう。
"""
if "\n" in text:
    print("ok")

# 実行結果
"""
ok
"""

最後に

今回はエスケープシーケンスやreplaceについてみていきました。これらは、他にもいろいろと役立つ場面があるので覚えておきましょう。

ここまで読んでいただきありがとうございました。

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!

コメント

コメントする

目次