Regex to check if the first character is uppercase

前端 未结 5 1855
忘了有多久
忘了有多久 2021-02-13 13:37

I\'m trying to check that the first character of a username is capital, the following can be letters or numbers and at most 20 characters long. Can someone explain why my synta

相关标签:
5条回答
  • 2021-02-13 14:17

    Why can't you let the poor users pick their own usernames? What you should do is convert all caps to lowercase.

    "User Name".toLowerCase();
    

    But if you are truly evil, you should change that z to a Z:

    /^[A-Z][A-Za-z0-9_-]{3,19}$/
    
    0 讨论(0)
  • 2021-02-13 14:21

    Your first Z is not a capital Z.

    /^[A-Z][a-z0-9_-]{3,19}$/
    
    0 讨论(0)
  • 2021-02-13 14:26

    Your first character needs to be A-Z, not A-z

    So

    /^[A-z][a-z0-9_-]{3,19}$/

    Should be

    /^[A-Z][a-z0-9_-]{3,19}$/

    0 讨论(0)
  • 2021-02-13 14:33

    I would do it like this:

    var firstChar = strToCheck.substring(0, 1);
    
    if (firstChar == firstChar.toUpperCase()) {
        // it is capital :D
    }
    
    0 讨论(0)
  • 2021-02-13 14:39

    You have a typo, the first z should be a capital -

    /^[A-Z][a-z0-9_-]{3,19}$/
    
    0 讨论(0)
提交回复
热议问题