巴扎黑2017-04-18 09:09:48
확인 결과 @BodhiXuguang의 답변이 올바르지 않습니다. 예를 들어 hello123
는 일치할 수 있지만 요구 사항을 충족하지 않습니다. 그리고
8개의 공백도 일치할 수 있지만 요구 사항을 충족하지 않습니다. 모든 특수 기호를 추가하는 방법은 없습니다.
비밀번호에 지정된 기호 이외의 특수 기호가 포함되지 않도록 (?=[a-zA-Z0-9_#@]+)
을 추가할 수 있지만 여전히 세 개의 기호가 포함되어야 한다는 보장은 없습니다.
숫자/문자/특수기호가 모두 포함된 것은 아니며, 2가지 이상의 기호를 포함하면 결과가 나옵니다.
사실 일반적인 질문은 아니니 비슷한 질문을 참고해주세요
伊谢尔伦2017-04-18 09:09:48
@BodhiXuguang의 생각이 맞습니다. 부정적인 예측을 긍정적인 예측으로 바꾸고 약간의 조정을 해보세요.
(?=.d.)(?=.[a-zA-Z].)(?=.[_#@].).{8,}
迷茫2017-04-18 09:09:48
이 문제는 정규식으로 해결하면 안 된다고 생각합니다. 각 도구에는 사용하기에 매우 적합한 자체 시나리오가 있으므로 간단한 if 문을 사용하여 해결하는 것은 적합하지 않습니다. . 판단은 구현하기 쉽고 읽기 쉽습니다. 왜 정규식을 사용해야 합니까? ?