2017-05-05 1 views
2
  1. 사용자 이름의 유일한 숫자는 끝에 있어야합니다. 끝에는 0 개 이상이있을 수 있습니다.Regex를 사용하여 userName 확인

  2. 사용자 이름 문자는 소문자 및 대문자 일 수 있습니다.

  3. 사용자 이름은 2 자 이상이어야합니다. 2 자로 된 사용자 이름은 알파벳 문자 만 사용할 수 있습니다.

나는 이것으로 노력하고있다. 그러나 나는 실속 상태이다. /\d+$\w+/gi

+1

가능한 복제 [ 사용자 이름 확인을위한 정규 표현식] (http://stackoverflow.com/questions/12018245/regular-expression-to-validate-username) – Kzqai

+0

@Kzqai는 OP 요구 사항을 충족하지 않습니다. –

+0

경험에 비추어 볼 때 사용자 이름을 사용하지 말고 전자 메일과 표시 이름을 사용하십시오. 누구도 다른 사이트의 다른 사용자 이름을 유지하려고하지 않습니다. 또한 사용자 이름을 사용하면 각 인증 실패를 개별적으로보고해야합니다. 사용자 이름이 너무 길거나 사용자 이름에 자본이 필요합니다. "username invalid"는 나쁜 UX입니다. 무엇이 잘못 되었습니까? 건너 뛰고 전자 메일을 사용하십시오. – Kzqai

답변

3

/^[a-z]{2,}\d*$/i이다 :

^  : the begining 
[a-z] : a character (a to z), you can add as many allowed characters as you want 
{2,} : at least 2 of them 
\d* : 0 or more digits 
$  : the end 
i  : ignore case sensetivity (both lowercases and uppercases are allowed) 
+1

이것은 효과가 있습니다! {2,} –

+0

에 대해 알아 본 다음 올바른 것으로 표시해야합니다. –

2

자명 문자 및 숫자 길이 분 2 특성을 갖는

/^[a-zA-Z]{2,}\d*$/i 

시험 결과 :의

UserNam9 = pass 
9username = fail 
Userna99 = pass 
usernameeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee = pass 
Us = pass 
U = fail 
+0

이 정규식은 잘못되었으며 몇 가지 문제가 있습니다. 먼저이 방법으로 숫자를 처음부터 허용합니다. 그런 다음 a-zA-Z를 지정하면 쓸모가 없습니다. a-z 만 사용하면 의미가 있습니다. 또한이 방법으로 두 개의 숫자도 허용합니다. – quirimmo

+0

무엇? 당신은'[a-zA-Z]'가 불필요하며 틀리지는 않지만 불필요하다는 것은 맞습니다. 하지만 나머지는 옳아 요. –

0
/^[A-z]{2,}[A-z0-9]{0,}$/ 
/^ // start of line 
[A-z]{2,} //alphabet characters 2 or more 
[A-z0-9]{0,} //numbers and alphabet 
$/ // end of line 
관련 문제