How can I clean up the following text with regex in python? I’m trying to replace multiple whitespaces and tabs with single spaces, but preserve new lines.
test = "This is a test. \n Blah blah."
In my new string, I want it to be:
"This is a test. \n Blah blah."
I’ve tried the following expression in an attempt to ignore new line characters, but it doesn’t seem to work.
result = re.sub('[^\n]\s\s+', ' ', test)
Thanks!
>Solution :
You can use code below:
import re
test = "This is a test. \n Blah blah."
print(re.sub(r"(?:(?!\n)\s)+", " ",test))
Output
This is a test.
Blah blah.