2011-03-04 4 views
7

문자열에서 새 줄을 확인하는 방법은 무엇입니까?Python 3.x에서 문자열의 새 줄을 어떻게 확인할 수 있습니까?

python3.x는 직접 if (x=='*\n')이 작동했을 때 java의 정규 작업과 비슷한 점이 있습니까?

+0

내가 줄 바꿈의 _any_ 종류의 검사에 대한 해결책을 기대했다 단지 유닉스 스타일. – ThorSummoner

+0

참고 : [개행 문자로 인식 될 수있는 여러 유니 코드 문자가 있음] (https://docs.python.org/3/library/stdtypes.html#str.splitlines) – jfs

+1

@ThorSummoner : Python은 기본적으로 유니버설 개행 모드를 사용합니다 즉, '\ r \ n'과 같은 플랫폼 별 개행 문자는 입력시 '\ n'으로 변환되고 역순으로 '\ n'은 출력시''os.linesep '으로 변환됩니다. 유니 코드 개행에 신경 쓰지 않는다면; ''\ n ''은 대부분의 경우에 필요한 것입니다. – jfs

답변

23

당신은 개행 (\n)이있는 경우, 당신은 그냥 문자열에 있는지 확인하기 위해 파이썬의 in 연산자를 사용할 수 있습니다 확인하려면 다음

>>> "\n" in "hello\ngoodbye" 
True 

... 또는 if의 일환으로 성명 :

이 경우 정규식을 사용할 필요가 없습니다.

+0

을 보완하여 문자열이 '\ n'으로 끝나는 지 알고 싶다면 "\ n"== foo [-1] –

+0

고맙습니다. 그것은 효과가 있었다. – change

+0

@XavierCombelle :'foo.endswith ('\ n')'가 더 읽기 쉽습니다. – jfs

9

예,이 같은 :

if '\n' in mystring: 
    ... 

(파이썬은 정규 표현식을 가지고 있지만,이 경우 과잉입니다.)

+0

그래, 내가 읽었을 때 박사님 .. – change

관련 문제