2015-01-09 2 views
0

문자열에 문자 나 숫자가 포함되지 않도록 .NET 프로그램의 정규식이 필요합니다. 밑줄과 다른 특수 문자는 괜찮습니다. 문자열의 예는 ".____"입니다.영숫자가 아닌 문자를 검사하는 정규식

문자열을 확인하고 숫자 나 문자가 없는지 확인해야합니다. 누구든지 도와 줄 수 있습니까?

답변

2

사용 :

P {L} \

^[^\p{L}\p{Nd}]+$

유니 코드 범주 "문자"P \
은 {의 Nd}가 유니 코드 범주에서 문자를 일치에서 문자를 일치 "진수"

1

문자 또는 숫자를 포함하지 않는 문자열을 허용하는 아래의 정규식을 사용해보십시오.

^[^\dA-Za-z]*$ 

^ 우리는 시작에 있음을 주장한다. $은 우리가 문자열의 끝에 있다고 주장합니다. [^..] 문자 클래스를 부인합니다. *은 이전 토큰을 0 번 이상 반복합니다. 빈 줄을 일치시키지 않으려면 위 정규식에서 +으로 *을 변경하십시오. 문자열이 문자 또는 숫자를 포함하지 않을 것이라는 주장

^[^\dA-Za-z]+$ 

또는

^(?!.*[\dA-Za-z]).*$ 

(?!.*[\dA-Za-z]) 부정적 예측. 조건이 참인 행만 일치합니다.

^[^\p{L}\p{N}]*$ 

\p{L}

또는

은 모든 언어에서 문자와 \p{N} 일치 자리의 어떤 종류의 모든 종류를 일치합니다. 이것을 [^\p{L}\p{N}]*과 같은 부정 문자 클래스에 넣음으로써 문자는 매치하지만 문자 또는 숫자는 매치하지 않을 것입니다.

+0

나를 부셔 주시겠습니까? 나는 정규 표현식에 익숙해 지려고 노력하고있다. 또한 첫 번째 표현식을 테스터에 입력하려고 시도했는데 "후행 공백"오류가 발생했습니다 – ElenaDBA

+0

'^ [^ \ dA-Za-z] + $'처럼' –

0

영숫자 문자가 발견되면 오류를 높이기 위해 찾고 있다면, 다음을 수행하는 것이 더 간단 할 수 있습니다

[A-Za-z0-9] 

당신은 정규식이 경우 시작과 끝 앵커 필요가 없습니다 영숫자 문자를 찾고 첫 번째 문자를 찾으면 true를 반환합니다.

관련 문제