正则表达式

232 阅读1分钟

// [A-Z] 查找任何从大写 A 到大写 Z 的字符 /* [a-zA-Z] 表示大小写的26个英文字母 都能匹配 / / [0-9] 查找任何从 0 至 9 的数字 / / /[0-9a-zA-Z]/ 表示26个大小写英文字母和数字都匹配 */

    /* [] 只要有一个符合都返回true 例如下面*/
    // let reg = /[0-9]/;
    // console.log(reg.test('abc'))

    /* [abc]	查找括号内的任意一个字符 */
    /* ^[] 表示以什么开头  */
    /* []$ 表示以什么结尾 */
    /* + 表示匹配前面字符串一次或者多次 */
    /* 可以匹配纯26个英文小写的字母  */
    // let reg = /^[a-z]+$/;
    // console.log(reg.test('abcccc'))

    /* 匹配一串字符 包括多个 英文字母 包括大小写 和数字  */
    // let reg = /^[a-zA-Z0-9]+$/;
    // console.log(reg.test('BASADasdf123123'))


    /* 用户名 字母 长度不能小于6位 不能大于10位 可以接受数字*/
    /* {n,}	至少匹配n 次  /^[a-z]{2,}$/  */
    /* 以[]内任意一个字母(包括大小写)或者数字开头 */
    // {n,m}	最少匹配 n 次且最多匹配 m 次 /^[a-z]{2,3}$/ 
    /* {n}	匹配确定的 n 次 /^\d{2}$/ 要加限定字符,否则2次以上也为true */

// // 匹配前面的子表达式零次或多次 /[a-z]*/ 字母出现与否都为true

// ? 匹配前面的子表达式零次或一次/[a-z]?/字母出现0或1次都为true // 正则有个特性只要匹配了一次都返回true,所以要加限定字符^$

    // let reg = /^[a-zA-Z0-9]?$/;
    // console.log(reg.test('12'))
    /* 
        用户名:
        1、只能数字 不小于5 /^[0-9]{5,}$/
        2、只能大小写字母 [5-9] 包括 59 /^[a-zA-Z]{5,9}$/
        3、只能出现 0次 多次 包括 大小写和数字 /^[a-zA-Z0-9]*$/
        4、只能出现 0次 一次 包括 大小写和数字 /^[a-zA-Z0-9]?$/
    */


    /* [^abc]	查找除了括号内的任意字符 */
    /* 写在[]里面的^叫除了 */
    // let reg = /[^abc]/;
    // console.log(reg.test('dfgg'))