Removing spaces from string in Python is a common task when cleaning or formatting text data. Python provides several built-in string methods that make this process simple and efficient. Depending on whether you want to remove leading spaces, trailing spaces, both ends, or even spaces inside the string, you can choose from the following options:
- str.lstrip()- Using this method you can remove the leading whitespaces from a String. See example.
- str.rstrip()- using this Python String method you can remove the trailing whitespaces from a String. See example.
- str.strip()- This method helps in removing both leading and trailing whitespaces from a String in Python. See example.
- re.sub()- By using re (Regular Expression) module's re.sub() function and passing the regular expression for spaces and replacement as a single space you can remove spaces in between words too apart from both leading and trailing whitespaces. See example.
It’s important to note that strings in Python are immutable, meaning these methods return a new string rather than modifying the original one. To keep the modified version, you must assign the result to a variable.
lstrip() - Removing leading whitepaces from String in Python
To remove spaces from the start of the String lstrip() method can be used.
string = " String with leading spaces" print(string) print(string.lstrip())
Output
String with leading spaces
String with leading spaces
rstrip() - Removing trailing whitepaces from String in Python
To remove spaces from the end of the String rstrip() method can be used.
string = "String with trailing spaces " print(string) print(string.rstrip())
Output
String with trailing spaces String with trailing spaces
strip() - Removing both leading and trailing whitespaces from String in Python
To remove spaces from both start and end of the String strip() method can be used.
string = " String with leading and trailing spaces " print(string) print(string.strip())
Output
String with leading and trailing spaces
String with leading and trailing spaces
Using re.sub() function in Python
You need to import re module to use this function. Function re.sub() replaces one or many matches with a replacement string.
In the function “//s+” is passed as a regular expression to match any number of spaces. As a replacement for those matches you can pass “” when removing leading and trailing spaces and a single space (“ ”) when removing spaces in between words.
^- represents start of the String
$- represents end of the String
string = " String with leading and trailing spaces "
print(string)
# removing leading and trailing spaces
string = re.sub("^\\s+|\\s+$", "", string)
# replacing more than one space between words with single space
string = re.sub("\\s+", " ", string)
print(string)
Output
String with leading and trailing spaces
String with leading and trailing spaces
That's all for this topic Removing Spaces From String in Python. If you have any doubt or any suggestions to make please drop a comment. Thanks!
>>>Return to Python Tutorial Page
Related Topics
You may also like-