PHP : 길이와 일치하는 간단한 정규식?
-
19-09-2019 - |
문제
Regex (그리고 선호하는)로 이름/패스 등을 확인 해야하는 등록 시스템을 만들고 있습니다. 지금까지 얻은 것은 다음과 같습니다.
//Check so numbers aren't first, such as 00foobar
preg_match('/^(?!\d)[a-z0-9]+$/iD',$usrname);
//Just simple check
preg_match('/^[a-zA-Z0-9]+$/',$psword);
그러나 나는 다음과 같은 if 진술에서 바보 같은 일을해야합니다.
if strlen($psword) > 30 || if (strlen($psword) < 4) ....
두 개의 원래 정규 표현식 진술에서 길이 검사를 어떻게 구현합니까? 이것은 나를 너무 행복하게 할 것입니다 ..
해결책
동일하지만 단어와 숫자에 w와 d를 사용하지만 다음과 같은 기본 기호도 포함하고 싶을 수도 있습니다. %!?/ ... etc...
preg_match('/^[\w\d]{4,30}$/',$psword);
그만큼 {n,v}
이전에 최소 N 및 최대 V 요소에 대해 검증됩니다.
처럼 A{2,3}
검증 할 것입니다 AA
그리고 AAA
. 당신은 볼 수 있습니다 거기 더 많은 참고 문헌
최소의 patern을 설정하려면 같은 방식으로 {n,}
할 것입니다. 예를 들어:
preg_match('/^[\w\d]{4,}$/',$psword);
다른 팁
나는 이것이 트릭을 수행해야한다고 생각합니다.
preg_match ( '/^[a-za-z0-9] {4,30} $/', $ psword);
제휴하지 않습니다 StackOverflow