2011-04-27 3 views
1
을 위해 그것을 조정하는 방법을 잘 내하지 아닌 정규식 편집

나는 암호를 나를 위해 쓰여진 정규식이 :, 필요

~^[[email protected]#\$%\^&\*\(\)]{8,16}$~i 

그것은 해야하는 8의 영숫자 문자열 및 기호에 맞게을 -16 자. 이제 사용자 편의를 위해 오류 메시지를 분할해야하므로 최소 및 최대 길이 요구 사항을 제거해야합니다. {8,16} 부분을 제거하려고했지만 그 후에 오류가 발생합니다. 어떻게하면 좋을까요? 미리 감사드립니다.

답변

2

너는 너무 길거나 너무 짧은 문자열에 대해 별도의 검사를하고 있는데,이 정규식은 잘못된 문자가 없는지 확인하고있다. 이것은을 수행해야합니다

~^[[email protected]#$%^&*()]+$~i 

+하나 이상의을 의미 *0 개 이상의을 의미한다 아마 당신이 사용하는 것은 중요하지 않습니다.

불필요한 백 슬래시도 제거했습니다. 그 문자들 중 어느 것도 문자 클래스 (대괄호 안에있는)에서 특별한 의미를 갖지 않습니다.