카테고리 없음
파이썬에서 이중 백슬래시를 단일 백슬래시로 바꾸는 방법은 어떻게 됩니까? [복제본]
스택큐힙리스트
2023. 11. 8. 11:56
반응형
나는 문자열을 가지고 있다. 그 문자열에 이중 반사선이 있다. 이중 반사선을 단일 반사선으로 대체하여 유니코드 문자 코드를 올바르게 구문 분석하고 싶다.
(Pdb) p fetched_page
'<p style=text-align:center; align=center><strong><span style=font-family:\'Times New Roman\', serif;font-size:115%;>Chapter 0<\\/span><\\/strong><\\/p>\n<p><span style=font-family:\'Times New Roman\', serif;font-size:115%;>Chapter 0 in \\u201cDreaming in Code\\u201d give a brief description of programming in its early years and how and why programmers are still struggling today...'
이 문자열 안에서 다음과 같은 이스케이프된 유니코드 문자 코드를 볼 수 있다:
\\u201c
이를 다음과 같이 변경하고 싶다:
\u201c
시도 1:
fetched_page.replace('\\\\', '\\')
하지만 이것은 작동하지 않습니다 - 보증된 백 슬래시를 검색합니다.
시도 2 :
fetched_page.replace('\\', '\')
하지만 이로 인해 줄 바꿈 오류가 발생합니다.
시도 3 :
fetched_page.decode('string_escape')
하지만 이는 텍스트에 영향을 미치지 않았습니다. 모든 이중 백 슬래시는 그대로 이중 백 슬래시로 남았습니다.
답변 1
Python3:
>>> b'\\u201c'.decode('unicode_escape')
'“'
또는
>>> '\\u201c'.encode().decode('unicode_escape')
'“'
답변 2
어떤 텍스트에서 두 개의 백슬래시를 한 개의 백슬래시로 대체하는 방법에 대해 설명합니다. 이 글은 파이썬에서 어떻게 이 작업을 수행할 수 있는지에 대한 정보를 제공합니다.파이썬에서 텍스트 문자열을 다룰 때, 백슬래시(\)는 특별한 의미를 갖고 있습니다. 예를 들어, 백슬래시 다음에 특수한 문자가 오면 이는 이스케이프(escape) 문자로 인식됩니다. 따라서 텍스트에서 백슬래시를 사용하기 위해서는 두 개의 백슬래시를 연속해서 작성해야 합니다.
그런데 때때로 우리는 텍스트에서 두 개의 백슬래시 대신 한 개의 백슬래시를 사용하고 싶을 수 있습니다. 이를 위해서는 파이썬의 문자열 처리 기능을 사용하여 백슬래시를 대체하는 방법을 알아볼 수 있습니다. 아래 예제 코드를 살펴보세요:
```python
text = '이것은 두 개의 백슬래시를 포함한 텍스트입니다: \\\\'
new_text = text.replace('\\\\', '\\')
print(new_text)
```
위의 코드에서 문자열 `text`에는 두 개의 백슬래시가 포함되어 있습니다. `replace()` 함수를 사용하여 `\\\\`를 찾고, 그것을 한 개의 백슬래시로 대체하였습니다. 결과적으로 `new_text`에는 한 개의 백슬래시가 포함된 텍스트가 저장됩니다.
이렇게 하면 더 이상 두 개의 백슬래시가 포함되지 않도록 문자열을 수정할 수 있습니다. 이 작업은 백슬래시를 사용하는 여러 상황에서 유용합니다. 예를 들어, 텍스트 파일에서 경로를 읽어들일 때 이를 처리하는 데에도 유용하게 활용할 수 있습니다.
파이썬에서 두 개의 백슬래시를 한 개의 백슬래시로 대체하는 방법에 대해 설명하였습니다. 이를 통해 텍스트의 포맷을 원하는 대로 변경할 수 있게 됩니다.
반응형