(?:--|#|\/\*|{)
입니다
(a|\/\*|b)
내가 컴파일 할 때 오류가 표시되지 않습니다.
왜 이런 현상이 발생합니까?
(?:--|#|\/\*|{)
입니다
(a|\/\*|b)
내가 컴파일 할 때 오류가 표시되지 않습니다.
왜 이런 현상이 발생합니까?
because of {
입니다. 이것은 반복되어야하는 것을 몇 번이나 지정하는데 사용됩니다. 예를 들어 x{2,4}
은 x
2 (xx
), 3 (xxx
) 또는 4 (xxxx
) 번을 반복합니다.
당신이 정규식 {
이 문자는 이스케이프 할 필요가 일치 할 경우
(?:--|#|\/\*|\{)
일반적으로 숫자 뒤에 '}'이 나오지 않으면'{'를 이스케이프 할 필요가 없습니다 ... 자바의 특수성으로 인해 문제를 해결할 수 있습니다. 구현. – Robin
@Robin : 예, Java는 항상'{'을 한정 기호의 시작으로 취급하고'[''는 문자 클래스의 시작으로 취급합니다. 사실,'''는 그 특이한 set-intersection feature ('&&')를 지원하기 위해 문자 클래스의 의미 *를 그대로 유지합니다. –
이 때문이 아니라'{'의 그것을인가? 반복해야하는 횟수를 지정하는 데 사용됩니다. 나는 그것을 도망 칠 것이다 :'(? : - | # | \/\ * | \ {)' –
@ GáborBakos 대답이 아닌 주석이어야한다. :) – Pshemo
그건 진짜 정규 표현식이 아니다. ? –