이 있는 함수에서는 파이썬을 분할 문자열을 무시하지 않고의 공백?

StackOverflow https://stackoverflow.com/questions/113534

  •  02-07-2019
  •  | 
  •  

문제

이 있는 함수에서는 파이썬을 분할 문자열을 무시하지 않고 공간에서 결과 목록?

E.g:

s="This is the string I want to split".split()

>>> s
['This', 'is', 'the', 'string', 'I', 'want', 'to', 'split']

나는 뭔가

['This',' ','is',' ', 'the',' ','string', ' ', .....]
도움이 되었습니까?

해결책

>>> import re
>>> re.split(r"(\s+)", "This is the string I want to split")
['This', ' ', 'is', ' ', 'the', ' ', 'string', ' ', 'I', ' ', 'want', ' ', 'to', ' ', 'split']

를 사용하여 캡처를 괄호 안에 있습니다.split()의 원인을 반환하는 함수 구분 기호뿐만 아니라.

다른 팁

지가 있다고 생각하지 않는 기능이 표준 라이브러리에는 그 자체에 의해,그러나"파티션이"가까이 오

가장 좋은 방법은 아마 정규 표현식을 사용하여(어떤 방법을 내가 이렇게 어떤 언어!)

import re
print re.split(r"(\s+)", "Your string here")

바보 같은 대답만을 위해 그것의 지옥:

mystring.replace(" ","! !").split("!")

어려운 부분으로 무엇을 하려고 시도하고 있는지를 주고 그것이 문자 분할에.split()폭발하는 문자열에는 문자를 제공하고 제거하는 문자입니다.

아마도이 도움이 될 수 있습니다.

s = "String to split"
mylist = []
for item in s.split():
    mylist.append(item)
    mylist.append(' ')
mylist = mylist[:-1]

더러운,그러나 그것을 잘 당신을 위해...

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top