文字列からすべての改行文字を削除しようとしています。やり方を読んだのですが、どういうわけかできないようです。これが私がしていることのステップバイステップです:
string1 = "Hello \n World"
string2 = string1.strip('\n')
print string2
そして、出力にはまだ改行文字が表示されています。rstripも試してみましたが、まだ改行が表示されています。誰かが私がこれを間違っている理由に光を当てることができますか?ありがとう。
文字列からすべての改行文字を削除しようとしています。やり方を読んだのですが、どういうわけかできないようです。これが私がしていることのステップバイステップです:
string1 = "Hello \n World"
string2 = string1.strip('\n')
print string2
そして、出力にはまだ改行文字が表示されています。rstripも試してみましたが、まだ改行が表示されています。誰かが私がこれを間違っている理由に光を当てることができますか?ありがとう。
strip
文字列の最初と最後からのみ文字を削除します。あなたが使いたいreplace
:
str2 = str.replace("\n", "")
re.sub('\s{2,}', ' ', str) # To remove more than one space
@johnが述べたように、最も確実な答えは次のとおりです。
string = "a\nb\rv"
new_string = " ".join(string.splitlines())
最近、ファイルからテキストを読むときに同じ質問があったので、遅く答えました。次のようないくつかのオプションを試しました。
with open('verdict.txt') as f:
alist
以下の最初のオプションは、ストリップされた、というリストを生成し'\n'
、その後、フルテキストに結合し直します(テキストを1つだけにしたい場合はオプション)。
alist = f.read().splitlines()
jalist = " ".join(alist)
以下の2番目のオプションは、はるかに簡単で単純で、スペースatext
置換と呼ばれるテキストの文字列を生成します。'\n'
atext = f.read().replace('\n',' ')
できます; 私はそれをしました。これは、クリーンで、簡単で、効率的です。
または、これを試すことができます:
string1 = 'Hello \n World'
tmp = string1.split()
string2 = ' '.join(tmp)
これは多くの場合に機能するはずです-
text = ' '.join([line.strip() for line in text.strip().splitlines() if line.strip()])
text = re.sub('[\r\n]+', ' ', text)
ファイルのテキストの途中に改行が含まれている場合、問題は解決されませんstrip()
。rstrip()
ストリップファミリは、文字列の最初と最後からトリミングするために使用されます
replace()
あなたの問題を解決する方法です
>>> my_name = "Landon\nWO"
>>> print my_name
Landon
WO
>>> my_name = my_name.replace('\n','')
>>> print my_name
LandonWO