2012-04-30 9 views
0

난 전용 영숫자와 몇 가지 특별한 문자가 포함 된 문자열을 확인하려면 확인 크기 :정규식 패턴은 숫자 및 특수 문자를 허용하는 (- 들)

1) 대시
2) 공간을
3) 점

크기는 3-255 자입니다.

@Pattern(regexp = "^[-a-zA-Z\s\.]\w{2,256}+$"

하지만이 제기 심지어이 시도

@Pattern(regexp = "^[-a-zA-Z\s\.]{3,255}+$"

하지만 내 아래 표현 나던 내가 생각하는 크기에 문제가 있습니다 work..something 것 같다 .. \ w 숯으로 인한 크기 유효성 검사에 문제가 있습니다. 왜냐하면 그것은 영숫자이며 특별한 문자는 허용하지 않기 때문입니다.

어떤 아이디어 ??

+1

정규식에 관한 질문에 항상 언어를 추가하십시오. 귀하의 첫 번째 정규식은 숫자 문자가 누락되고, 그 밖의 모든 것은 많은 언어로 작동합니다 (전부는 아님). ASCII 문자 또는 모든 문자 만 사용 하시겠습니까? – stema

답변

1

대시도 특수 키입니다. 백 슬래시를 추가하십시오. 그리고 결국 +는 필요 없습니다.

^[\-a-zA-Z0-9\s\.]{3,255}$ 
+1

대시는 문자 클래스의 특수 문자이지만 시작이나 끝에서 이스케이프 할 필요가 없습니다 (하지만 해를 끼치 지는 않습니다) – stema

+0

@zomboid : thanks !! 그것은 작동합니다 .. 그리고 어떤 스템타 말이 맞았는지 .. 내 대쉬 숯불이 태그의 시작이나 끝에 머무르면 나는 백 슬래시가 필요 없다. –

+0

thanks @stema !! –

관련 문제