Removing newline character from string in Python (original) (raw)
Last Updated : 24 Dec, 2024
When working with text data, newline characters (\n
) are often encountered especially when reading from files or handling multi-line strings. These characters can interfere with data processing and formatting. In this article, we will explore different methods to remove newline characters from strings in Python.
**Using str.replace()
str.replace() method
is the most simple and efficient way to remove all newline characters from a string. It replaces every occurrence \n
with an empty string.
Python `
s = "Python\nWith\nGFG"
cleaned_text = s.replace("\n", "") print(cleaned_text)
`
**Explanation:
- Here
replace() is used
to replace\n
with an empty string. - It removes all newline characters in one operation.
Let’s see some more methods to remove newline characters from string in Python.
Table of Content
**Using str.splitlines()
and str.join()
This method splits the string into a list of lines and then joins them back without newline characters.
Python `
a = "Python\nWith\nGFG" cleaned_text = "".join(a.splitlines()) print(cleaned_text)
`
**Explanation:
- splitlines() splits the string
text
into a list of lines. - join() takes this list and concatenates its elements, adding no separator (
""
) between them. - We get a single string without newline characters.
U**sing List Comprehension
List comprehension iterates through each character in the string, filtering out newline characters.
Python `
s = "Python\nWith\nGFG" cleaned_text = "".join([char for char in s if char != "\n"]) print(cleaned_text)
`
**Explanation:
- The list comprehension creates a new list containing all characters in
text
except\n
. - The join() method concatenates these characters into a single string.
Using Regular Expressions (re.sub()
)
Regular expressions allow us to find and replace patterns in text. The re.sub() function can match newline characters and remove them.
Python `
import re s = "Python\nWith\nGFG" cleaned_text = re.sub(r"\n", "", s) print(cleaned_text)
`
**Explanation:
- The
re.sub()
function looks for all matches of the pattern\n
intext
. - It replaces each match with an empty string.
- The resulting string,
cleaned_text
, no longer contains newlines.