I am trying replace a backslash ‘\’ in a string with the following code
string = "<P style="TEXT-INDENT">\B7 </P>"
result = string.replace("\",'')
result:
------------------------------------------------------------
File "<ipython console>", line 1
result = string.replace("\",'')
^
SyntaxError: EOL while scanning string literal
Here i don’t need the back slashes because actually i am parsing an xml file which has a tag in the above format, so if backslashes are there it is displaying invalid token
during parsing
Can i know how to
replace the backslashes with empty string in python
asked Sep 27, 2012 at 9:18
We need to specify that we want to replace a string that contains a single backslash. We cannot write that as "\"
, because the backslash is escaping the intended closing double-quote. We
also cannot use a raw string literal for this: r"\"
does not work.
Instead, we simply escape the backslash using another backslash:
result = string.replace("\\","")
answered Sep 27, 2012 at 9:20
The error is because you did not add a escape character to your '\'
, you should give \\
for backslash (\)
In [147]: foo = "a\c\d" # example string with backslashes
In [148]: foo
Out[148]: 'a\\c\\d'
In [149]: foo.replace('\\', " ")
Out[149]: 'a c d'
In [150]: foo.replace('\\', "")
Out[150]: 'acd'
mdoc-2011
2,5174 gold badges20 silver badges40 bronze badges
answered Sep 27, 2012 at 9:19
avasalavasal
13.8k4 gold badges30 silver badges47 bronze badges
1
In Python, as explained in the
documentation:
The backslash () character is used to escape characters that otherwise have a special meaning, such as newline, backslash itself, or the quote character.
So, in order to replace \
in a string, you need to escape the backslash itself with another backslash, thus:
>>> "this is a \ I want to replace".replace("\\", "?")
'this is a ? I want to replace'
answered Sep 27, 2012 at 9:27
Pierre GMPierre GM
19k3 gold badges54 silver badges65 bronze
badges
1
Using regular expressions:
import re
new_string = re.sub("\\\\", "", old_string)
The trick here is that "\\\\"
is a string literal describing a string containing
two backslashes (each one is escaped), then the regex engine compiles that into a pattern that will match one backslash (doing a separate layer of unescaping).
answered
Aug 5, 2020 at 21:09
Adding a solution if string='abcd\nop.png'
result = string.replace("\\","")
This above won’t work as it’ll give result="abcd\nop.png"
.
Here if you see \n
is a newline character. So we have to replace backslah char in raw string(as there ‘\n’ won’t be detected)
string.encode('unicode_escape')
result = string.replace("\\", "")
#result=abcdnop.png
answered Jul 20, 2020 at 12:34

valeriyanvaleriyan
591 silver badge5 bronze badges
1
You need to escape ‘\’ with one extra
backslash to compare actually with \
.. So you should use ‘\’..
See Python Documentation – section 2.4 for all the escape sequences
in Python.. And how you should handle them..
answered Sep 27, 2012 at 9:28
Rohit JainRohit Jain
205k43 gold badges399 silver badges515 bronze badges
It’s August 2020.
Python 3.8.1
Pandas
1.1.0
At this point in time I used both the double \ backslash AND the r.
df.replace([r'\\'], [''], regex=True, inplace=True)
Cheers.
answered Aug 15, 2020 at 1:10
How do you replace a backslash in a string in Python?
A forward-slash (/) in a Python string can be replaced by a backslash (\) using the String replace() function, translate() method, or regular expression(re..
1 Using replace().
2 Using translate() function..
3 Using regular expression (re.sub()).
4 Backslash in Python..
How do you replace a backslash?
To replace all backslashes in a string:
Call the replaceAll() method, passing it a string containing two backslashes as the first parameter and the replacement string as the second. The replaceAll method will return a new string with all backslashes replaced by the provided replacement.
How do you handle a backslash in Python?
In short, to match a literal backslash, one has to write ‘\\\\’ as the RE string, because the regular expression must be “\\”, and each backslash must be expressed as “\\” inside a regular Python string literal.
…
3. 2 The Backslash Plague..
How do I remove backslash from a list in Python?
Using replace() Function to Remove Backslash from String in Python. The replace() can be utilized to remove an escape sequence or just a backslash in Python by simply substituting it with space in Python.
Thuộc website harveymomstudy.com