javascript正则表达式

2019-03-02  本文已影响0人  原上的小木屋

什么是贪婪模式和非贪婪模式?

  1. 属于贪婪模式的量词,也叫做匹配优先量词,包括:
    “{m,n}”“{m,}”“?”“*”“+”
    在一些使用NFA引擎的语言中,在匹配优先量词后加上“?”,即变成属于非贪婪模式的量词,也叫做忽略优先量词,包括:
    “{m,n}?”“{m,}?”“??”“*?”“+?”
    从正则语法的角度来讲,被匹配优先量词修饰的子表达式使用的就是贪婪模式,如“(Expression)+”;被忽略优先量词修饰的子表达式使用的就是非贪婪模式,如“(Expression)+?”。
    一个例子
    源字符串:aa<div>test1</div>bb<div>test2</div>cc

写一个函数isValidUsername(str),判断用户输入的是不是合法的用户名(长度6-20个字符,只能包括字母、数字、下划线)。

function isValidUsername(str){
    reg=/^\w{6,20}$/g
    return reg.test(str)
}

写一个函数isPhoneNum(str),判断用户输入的是不是手机号。

function isPhoneName(str){
    reg=/^1[3578]\d{9}$/g
    return reg.test(str)
}

写一个函数isEmail(str),判断用户输入的是不是邮箱。

function isEmail(str){
    reg= /^([a-zA-Z0-9_\-])+@([a-zA-Z0-9_\-])+(\.[a-zA-Z0-9_\-])+$/
    return reg.test(str)
}

写一个函数trim(str),去除字符串两边的空白字符。

function trim(str){
    return str.replace(/(^\s*)|(\s*)$/g,"")
}

\d\w\s[a-zA-Z0-9]\b.*+?x{3}^$分别是什么?

上一篇下一篇

猜你喜欢

热点阅读