正則表達(dá)式

1: \d坡疼,\w,\s,[a-zA-Z0-9],\b,.,*,+,?,x{3},^,$分別是什么?

  • \d:表示匹配0-9之間的任意數(shù)字沪袭,相當(dāng)于[0-9]
  • \w:表示匹配任意的字母避乏、數(shù)字和下劃線芥驳,相當(dāng)于[A-Za-z0-9_]
  • \S:表示匹配空格(包括制表符郑藏,空格符较性,斷行符)鲤孵,相當(dāng)于[\t\r\n\v\f]
  • \b:表示匹配詞的邊界
  • .:表示匹配除回車(\r)部脚、換行(\n)、行分隔符(\u2028)和段分割符(\u2029)以外的所有字符裤纹。
  • *:表示某個模式出現(xiàn)0次或多次委刘,等同于{0丧没,}
  • +:表示某個模式出現(xiàn)1次或多次,等同{1,}
  • ?:問號表示某個模式出現(xiàn)0次或1次锡移,等同于{0,1}
  • x{3}:表示查找符合x出現(xiàn)三次以上的元素呕童。
    ^:
    • 1.^元字符,創(chuàng)建反向類
    • 2.^邊界匹配字符淆珊,以xxx開頭
  • $以xxx結(jié)尾

2: 寫一個函數(shù)trim(str)夺饲,去除字符串兩邊的空白字符

function trim(str){
            var reg = /^\s*|\s*/g;
            return str.replace(reg,'');
        };

        var str = '   adf     ';
        console.log('{'+trim(str)+'}');

題目3: 寫一個函數(shù)isEmail(str),判斷用戶輸入的是不是郵箱

function isEmail(str){
  var reg = /^\w+@\w+\.[a-zA-Z]+$ /;
 return reg.test(str);
}施符;
  newstr = isEmail('wu898@gamil.com');
  console.log(newstr);

題目4: 寫一個函數(shù)isPhoneNum(str)往声,判斷用戶輸入的是不是手機(jī)號

 function isPhoneNum(str){
        var reg = /^(\+86)?1\d{10}$/;
        return reg.test(str);
     };
     var newStr = isPhoneNum('18019216293');
     console.log(newStr);

題目5: 寫一個函數(shù)isValidUsername(str),判斷用戶輸入的是不是合法的用戶名(長度6-20個字符戳吝,只能包括字母浩销、數(shù)字、下劃線)

function isValidUsername(str){
            var reg = /^\w{6,20}$/;
            return reg.test(str);
         };
        var str = 'aabbcccvvddd';
        console.log(isValidUsername(str));

題目6: 寫一個函數(shù)isValidPassword(str), 判斷用戶輸入的是不是合法密碼(長度6-20個字符听哭,只包括大寫字母慢洋、小寫字母、數(shù)字陆盘、下劃線普筹,且至少包括兩種)

function isValidPassword(str){
            if(str.length<6||str.length>20){
                return '錯誤,密碼長度為6到20個字符';
            }else if(/^[A-Z]+$|^\d+$|^[a-z]+$|^_+$/g.test(str)){
                return '錯誤隘马,密碼應(yīng)包括大寫字母太防、小寫字母、數(shù)字酸员、下劃線中至少兩種';
            }else{
                return'恭喜杏头,正確的密碼';
            };
        };
        console.log(isValidPassword('1'))     //"錯誤,密碼長度為6到20個字符"
        console.log(isValidPassword('1111111'))  //"錯誤沸呐,密碼應(yīng)包括大寫字母、小寫字母呢燥、數(shù)字崭添、下劃線中至少兩種"
        console.log(isValidPassword('AAAAAAA'))   //"錯誤,密碼應(yīng)包括大寫字母叛氨、小寫字母呼渣、數(shù)字、下劃線中至少兩種"
        console.log(isValidPassword('aaaaaaaaa'))   //"錯誤寞埠,密碼應(yīng)包括大寫字母屁置、小寫字母、數(shù)字仁连、下劃線中至少兩種"
        console.log(isValidPassword('__________'))   //"錯誤蓝角,密碼應(yīng)包括大寫字母阱穗、小寫字母、數(shù)字使鹅、下劃線中至少兩種"
        console.log(isValidPassword('As_2dasasd'))   //"正確的密碼"
        console.log(isValidPassword('das_0123123A')) // "正確的密碼"

題目7: 寫一個正則表達(dá)式揪阶,得到如下字符串里所有的顏色

var re = /#[a-zA-Z0-9]{6}/g;
var subj = "color: #121212; background-color: #AA00ef; width: 12px; bad-colors: f#fddee "
console.log( subj.match(re) )  // ['#121212', '#AA00ef']

題目8: 下面代碼輸出什么? 為什么? 改寫代碼,讓其輸出[""hunger"", ""world""].

var str = 'hello  "hunger" , hello "world"';
var pat =  /".*"/g;
str.match(pat);

該題是考察貪婪和懶惰匹配
貪婪匹配:正則表達(dá)式一般趨向于最大長度匹配患朱,也就是所謂的貪婪匹配
懶惰匹配就是匹配到結(jié)果就好鲁僚,就少的匹配字符
兩種修改方式:

Paste_Image.png

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市裁厅,隨后出現(xiàn)的幾起案子冰沙,更是在濱河造成了極大的恐慌,老刑警劉巖执虹,帶你破解...
    沈念sama閱讀 211,376評論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件拓挥,死亡現(xiàn)場離奇詭異,居然都是意外死亡声畏,警方通過查閱死者的電腦和手機(jī)撞叽,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,126評論 2 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來插龄,“玉大人愿棋,你說我怎么就攤上這事【危” “怎么了糠雨?”我有些...
    開封第一講書人閱讀 156,966評論 0 347
  • 文/不壞的土叔 我叫張陵,是天一觀的道長徘跪。 經(jīng)常有香客問我甘邀,道長,這世上最難降的妖魔是什么垮庐? 我笑而不...
    開封第一講書人閱讀 56,432評論 1 283
  • 正文 為了忘掉前任松邪,我火速辦了婚禮,結(jié)果婚禮上哨查,老公的妹妹穿的比我還像新娘逗抑。我一直安慰自己,他們只是感情好寒亥,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,519評論 6 385
  • 文/花漫 我一把揭開白布邮府。 她就那樣靜靜地躺著,像睡著了一般溉奕。 火紅的嫁衣襯著肌膚如雪褂傀。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,792評論 1 290
  • 那天加勤,我揣著相機(jī)與錄音仙辟,去河邊找鬼同波。 笑死,一個胖子當(dāng)著我的面吹牛欺嗤,可吹牛的內(nèi)容都是我干的参萄。 我是一名探鬼主播,決...
    沈念sama閱讀 38,933評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼煎饼,長吁一口氣:“原來是場噩夢啊……” “哼讹挎!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起吆玖,我...
    開封第一講書人閱讀 37,701評論 0 266
  • 序言:老撾萬榮一對情侶失蹤筒溃,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后沾乘,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體怜奖,經(jīng)...
    沈念sama閱讀 44,143評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,488評論 2 327
  • 正文 我和宋清朗相戀三年翅阵,在試婚紗的時候發(fā)現(xiàn)自己被綠了歪玲。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,626評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡掷匠,死狀恐怖滥崩,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情讹语,我是刑警寧澤钙皮,帶...
    沈念sama閱讀 34,292評論 4 329
  • 正文 年R本政府宣布,位于F島的核電站顽决,受9級特大地震影響短条,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜才菠,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,896評論 3 313
  • 文/蒙蒙 一茸时、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧赋访,春花似錦可都、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,742評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽命斧。三九已至田晚,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間国葬,已是汗流浹背贤徒。 一陣腳步聲響...
    開封第一講書人閱讀 31,977評論 1 265
  • 我被黑心中介騙來泰國打工芹壕, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人接奈。 一個月前我還...
    沈念sama閱讀 46,324評論 2 360
  • 正文 我出身青樓踢涌,卻偏偏與公主長得像,于是被迫代替她去往敵國和親序宦。 傳聞我的和親對象是個殘疾皇子睁壁,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,494評論 2 348

推薦閱讀更多精彩內(nèi)容