> Java > java지도 시간 > 공백을 거부하도록 Java 비밀번호 검증 정규식을 어떻게 개선할 수 있습니까?

공백을 거부하도록 Java 비밀번호 검증 정규식을 어떻게 개선할 수 있습니까?

Barbara Streisand
풀어 주다: 2024-12-11 00:19:11
원래의
660명이 탐색했습니다.

How Can I Improve My Java Password Validation Regex to Reject Whitespace?

Java에서 비밀번호 확인을 위한 정규식

Java 애플리케이션에서 비밀번호를 확인하기 위해 사용자 정의 정규식(regexp)을 다음과 같이 정의할 수 있습니다. 구성 매개변수.

문제:

정규식:

^.*(?=.{8,})(?=..*[0-9])(?=.*[a-z])(?=.*[A-Z])(?=.*[@#$%^&+=]).*$
로그인 후 복사

최소 길이, 숫자 존재 여부, 소문자 및 대문자와 같은 비밀번호 규칙을 시행합니다. , 특수문자 등이 있습니다. 그러나 공백, 탭 또는 캐리지 리턴 없이 비밀번호를 식별하는 기능은 지원되지 않습니다.

해결책:

이 문제를 해결하려면 기존 정규 표현식에 다음을 추가하세요.

(?=\S+$)
로그인 후 복사

최종 정규 표현식:

^(?=.*[0-9])(?=.*[a-z])(?=.*[A-Z])(?=.*[@#$%^&+=])(?=\S+$).{8,}$
로그인 후 복사

설명:

  • ^ 및 $는 문자열의 시작과 끝과 일치하는 앵커로 전체 비밀번호를 보장합니다. 검증되었습니다.
  • (?=.*[0-9])는 적어도 하나의 존재를 주장합니다. digit.
  • (?=.*[a-z])는 하나 이상의 소문자가 있음을 나타냅니다.
  • (?=.*[A-Z])는 하나 이상의 대문자가 있음을 나타냅니다. letter.
  • (?=.*[@#$%^& =])는 하나 이상의 특수 문자(@#%$^)가 있음을 확인합니다. etc.).
  • (?=S $)는 공백, 탭, 캐리지 리턴 또는 공백 문자가 없음을 확인합니다.
  • .({8,}$는 모든 문자(. ) 최소 8회 발생하여 비밀번호가 최소 길이 요구 사항을 충족하는지 확인하세요.

위 내용은 공백을 거부하도록 Java 비밀번호 검증 정규식을 어떻게 개선할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿