JavaScript正则表达式

64 阅读1分钟

表达式

    /* [A-Z]查找任何从大写A到大写Z的字符 */
    /* [a-zA-Z]表示大小写的26个英文字母都能匹配 */
    /* [0-9a-zA-Z]  表示26个大小写英文字母和数字都匹配 */
    /* let reg=/[a-zA-Z]/
    console.log(reg.test('c')); */

    /* let reg=/[0-9]/
    console.log(reg.test('abc123')); */
    /* 只要有一个匹配上,就会返回true */

    /* [abc] 查找括号里的任意字符 */
    /* [^abc]查找除了括号里的任意字符(取反) */
    /* 写在[]里的叫除了 */
    /* ^[]表示以括号内任意一个数开头 */
    /* []$表示以括号内任意一个数结尾 */

    /* + 表示匹配前面的字符串一次或者多次 */
    /* 可以匹配纯的26个英文小写字母 */
    /* let reg=/^[a-z]+$/
    console.log(reg.test('abc')); */

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

    

    /* 必须要加限定符/^[]{}$/,否则会失效 */
    /* {n,}至少匹配n次  /^[a-z]{2,}$/ */
    /* {n,m}最少匹配n次且最多匹配m次 */
    /* {n}匹配确定的n次  */
    /* let a=/^[a-zA-Z0-9]{6,}$/
    console.log(a.test('aqwe1bas')); */
    
    
    

元字符

    /* \w 匹配数字,字母,下划线 */
    /* let reg=/^\w+$/
    console.log(reg.test('_asd123')); */
    
    /* \W  匹配非数字,字母,下划线 */
    /* let reg=/^\W+$/
    console.log(reg.test('())'));*/

    /* \d 匹配数字 */
    /* \D 匹配非数字 */

    /*  \s  匹配空白字符(空格、换行\n回车\r)(空字符串不可以) */
    /* \S   匹配非空白字符(空格,换行\n,回车\r,空字符串返回false,其他都返回true) */

    /* \n   匹配换行符 (这里只匹配\n,不匹配\r) */
    
    
    

修饰符

     /* 修饰符 i  对大小写不敏感匹配(忽略大小写进行匹配) */
    /* 修饰符g   执行全局匹配(查找所有匹配而非在找到第一个匹配后停止) */