2013-07-07 4 views

답변

3

도트는 character class 안에 문자가있는 점과 일치합니다.

대신 'AAa\nbBB'.match(/AA[\s\S]*BB/);을 사용하십시오.

대부분의 정규 표현식에서 /AA.*BB/s과 같은 정규식의 경우 일치시킬 점을 허용하기 위해 /s 플래그를 설정할 수 있습니다. 그러나 JavaScript에서는 해당 기능을 사용할 수 없으므로 어떤 문자와도 일치 시키려면 [\s\S]을 사용해야합니다.

+2

'[^]'는'[\ s \ S]'와 더 짧습니다. – Gumbo

+2

@Gumbo : 네,하지만 자바 스크립트에서만 작동합니다. 최소한'[\ s \ S]'는 이식성이 있습니다. –

+0

@TimPietzcker 휴대 가능한 것은 아닙니다. 예를 들어 grep에서는 작동하지 않습니다. 여기서 이식성이 어떻게 관련이 있는지는 알 수 없습니다. 캡쳐 그룹에 신경 쓰지 않는다면'(. | \ n)'이 더 읽기 쉽습니다. – 1983

관련 문제