2015-01-29 3 views
1

Я хочу удалить эту строку «\». Но я не могу удалить его, потому что нужно сделать «\ t или \ n». Тогда я попробую этот "" "" \ "" "". Но питон все еще ничего не делает. Я думаю, что двоичный код не получает эту строку. Это кодудалить этот неопознанный символ «» из строки python

remove = string.replace(""""\"""", " ") 

И я хочу, чтобы заменить

"\workspace\file.txt" become "workspace file.txt" 

Кто-нибудь есть какие-либо идеи? Заранее спасибо

+0

Так вы просто хотите избавиться от обратной косой черты? – Makoto

ответ

4

Вы пытаетесь заменить обратную косую черту, но поскольку Python использует обратную косую черту как escape-символы, вам действительно нужно избежать обратного слэша.

remove = str.replace("\\", " ") 

DEMO:

In [1]: r"\workspace\file.txt".replace("\\", " ") 
Out[1]: ' workspace file.txt' 

Примечание ведущее пространство. Вы можете вызвать str.strip по окончательному результату.

0

Вы должны избегать обратной косой черты, поскольку она имеет особое значение в строках. Даже в исходной строке, если вы оставите это так, то это выйдет ... не так, как ожидалось:

"\workspace\file.txt" --> '\\workspace\x0cile.txt' 

Вот то, что разорвет строку вверх обратной косой, присоединиться к ним вместе с где обратная косая черта была, и обрезать пробелы до и после строки. Он также содержит правильно экранированную строку, в которой вы нуждаетесь.

" ".join("\\workspace\\file.txt".split("\\")).strip() 
+1

Почему вы используете split и присоединяетесь сюда вместо замены? Есть ли какая-то оптимизация? –

+0

Поскольку я не использовал необработанную строку, мне пришлось обойти тот факт, что и исходная строка была вставлена, и что вы получили бы ведущие пробелы, если бы вы только присоединились. – Makoto

+0

Есть ли "." .join (["", "some", "text"]) 'выводить ведущие пробелы? Я решил, что он игнорирует пустые строки. Интересно. –

0

Посмотреть этот способ можно архивировать это,

>>> str = r"\workspace\file.txt" 
>>> str.replace("\\", " ").strip() 
'workspace file.txt' 
>>> 
Смежные вопросы