이 답변을 쓰는 동안 s
-flag (-dot dotall
match linebreaks) 를 사용하는 대신 linebreaks에서만 독점적으로 일치해야했습니다 .
정규 표현식을 테스트하는 데 주로 사용되는 사이트는 \n
또는 에서 일치하려고 할 때 다르게 동작합니다 \r\n
.
나는 알아 차렸다
Regex101은 줄 바꿈 만 일치합니다
\n
( 예 -삭제\r
및 일치)RegExr는 줄 바꿈과 일치하는 도 에
\n
도 에\r\n
나는, 그것은 LINEBREAK 일치하게 뭔가를 찾으를 제외 할 수m
-flag와\s
( 예 )Debuggex 더욱 다양한 동작 :
에 이 예 그것은 단지에 일치\r\n
하면서,
여기에 단지에 일치\n
지정한 것과 동일한 플래그와 엔진,
나는 m
-flag ( 여러 줄-줄 ^
의 시작과 $
끝을 일치시킵니다)를 완전히 알고 있지만 때로는 옵션이 아닙니다. \s
탭과 공백도 일치하므로와 동일 합니다.
유니 코드 줄 바꿈 문자 ( \u0085
) 를 사용하려는 생각이 성공하지 못했습니다.
- 줄 바꿈에서 일치를 정규식으로 통합하는 안전한 방법이 있습니까?
- 이유는 위에서 언급 한 사이트가 다르게 동작 할 (특히 Debuggex는 한 번 일치 만에
\n
한 번 만에\r\n
)?
\r?\n
모두 일치 \r\n
하고 \n
라인 종료 시퀀스를. 이전 \r
Mac 구문에서는 작동하지 않지만 요즘에는 매우 드 rare니다.
[\r\n]+
-이나 뭐 이런