2012-05-24 4 views
6

나는이 정규식이 : [\s\S-[<>]]*정규식 이해 [ S S - [<>]] *

당신이 날은이 표현의 약자입니까 이해하는 데 도움 주실 수 있습니까? 내가 본 것으로부터 공백으로 구성된 문자 클래스와 비 공백 문자에서 < 또는>까지의 범위를 의미합니까?

의미가 없습니다.

고마워요!

+0

어떤 언어에 의해 달성 될 수있다 - [\s\S] 어떤 문자와 일치하기 때문에

그러나 귀하의 경우

, 그것은 정말 많은 이해가되지 않습니다? – Tim

+0

Java 용이므로 XSD 유효성 검사기 패턴에 적용됩니다.

답변

8

이 변형은 몇 가지 정규식 엔진 (.NET, JGSoft, XML 스키마 및 XPath이지만 네이티브 Java 정규식과는 달리)에서만 지원되는 변형이며 character class substraction이라고합니다. 예를 들어

,

[A-Z-[EFG]] 

E, F 또는 G 제외 ZA에서 어떤 편지를 일치합니다. (모든 정규식 맛에) 같은 결과

[^<>]* 
+0

고마워! 그러나 [A \ S - [<>]를 쓰면 "문자 A 또는 <>가없는 공백이 아닌 문자"를 의미할까요? –

+0

또는 심지어 간단하면 [\ S - [<>]는 <>가없는 모든 공백 문자를 의미합니까? –

+0

@leadgy : 예, 그렇지만 항상 다른 방식으로 쓸 수 있습니다 (예 :'[^ \ s <>]'). –

관련 문제