day10(2017.10.24)

正則表達(dá)式

正則表達(dá)式:是由一個(gè)字母數(shù)字和一些特殊符號(hào)組成的描述字符模式的對(duì)象
一锨络、功能
1、模式匹配  2毡代、文本檢索  3、替換
二为居、創(chuàng)建
1.通過RegExp()構(gòu)造函數(shù)來創(chuàng)建(顯式創(chuàng)建)
var reg = new RegExp("表達(dá)式"[,修飾符]);
var reg = new RegExp("\\d{3}")  //匹配三個(gè)數(shù)字  第一個(gè)\是轉(zhuǎn)義第二個(gè)\斜杠
2、通過字面量(直接量)方式來創(chuàng)建(隱式創(chuàng)建)------常用
var reg = /表達(dá)式/[修飾符]杀狡;
var reg = /\d{3}/;
這含義上不一樣蒙畴,顯示創(chuàng)建的是實(shí)例對(duì)象,隱式創(chuàng)建的是單個(gè)對(duì)象呜象。
三膳凝、正則表達(dá)式的方法:
    1、test()
        功能:用于檢測(cè)是否于正則匹配恭陡。
        返回:布爾值蹬音,true匹配,false不匹配
        語法:reg.test(檢測(cè)的內(nèi)容)

    2子姜、exec()
        功能:用于檢測(cè)是否于正則匹配祟绊。
        返回:如果匹配返回?cái)?shù)組,不匹配返回null
        語法:reg.exec(檢測(cè)的內(nèi)容)
        說明:
            第一個(gè)數(shù)組元素存放的匹配的內(nèi)容
            第二哥捕、三……數(shù)組元素存放的是分組所匹配的內(nèi)容
            支持兩個(gè)屬性:
                index:匹配項(xiàng)的索引位置
                input:
四牧抽、修飾符:
    i 忽略大小寫
    m 多行匹配
    g 全文匹配
var reg = /[a-z]/gi;  //匹配所有字母遥赚,忽略大小寫
五扬舒、元字符(字符類):具有特殊含義的字符

    [……]   匹配括號(hào)內(nèi)的任意一個(gè)字符      [0-9a-zA-Z]
    [^……]  匹配除了括號(hào)內(nèi)的任意字符   [^0-9]
    \d      數(shù)字
    \D      非數(shù)字

    \w     字母數(shù)字下劃線
    \W     非字母數(shù)字下劃線  

    \s     空白字符(空格  制表符)    
    \S     非空白字符

    .       除了換行符以外的任意字符

    \n     換行符
    \r     回車符
    \t     制表符
限定符
    ^xx   以xx開始

    xx$   以xx結(jié)束
六、重復(fù):設(shè)置匹配的次數(shù)
    {n}     匹配前一項(xiàng)n次
    {n,m}   匹配前一項(xiàng)n到m次
    {n,}    匹配前一項(xiàng)n到多次
         
    *       匹配前一項(xiàng)0到多次
    凫佛?      匹配前一項(xiàng)0到1次
    +       匹配前一項(xiàng)1到多次
七讲坎、轉(zhuǎn)義字符:將特殊符號(hào)恢復(fù)成它字面本身意思
    通過:\ 這個(gè)符號(hào)來進(jìn)行轉(zhuǎn)義
    需要轉(zhuǎn)義的符號(hào) :   [ ]  {  }  ( )  . ?  *  + ^ $   \   / 

選擇: | 或者

分組:()可以將多個(gè)匹配項(xiàng)組合為一個(gè)整體
八、單字節(jié): 字符串對(duì)象.replace(新節(jié)點(diǎn)愧薛,舊節(jié)點(diǎn))
        var str = "as df1d f14r4 g421g   5r4";
        console.log(str.replace(/\s/g,""));  //asdf1df14r4g421g5r4    \s匹配空格
        console.log(str.match(/\d+/g));  //["1","14","4","421","5","4"]
        console.log(str.match(/\d/g));   //["1", "1", "4", "4", "4", "2", "1", "5", "4"]
        console.log(str.split(/\s+/g));  //["as", "df1d", "f14r4", "g421g", "5r4"]
小案例
//html
<input type="text" id="txt"><span></span>
//js
var txt = document.getElementById('txt');
        var span = document.getElementsByTagName('span')[0];
        txt.oninput = function(){
            var reg1 = /\d/;  //有數(shù)字
            var reg2 = /[a-z]/;  //有字母
            var reg3 = /[^a-zA-Z0-9]/;  //不含大小寫字母數(shù)字的任意字符
            var s=0;
            if(reg1.test(txt.value)){
                s++;  //若果有數(shù)字  s+1
            }
            if(reg2.test(txt.value)){
                s++;  //若果有字母  s+1
            }
            if(reg3.test(txt.value)){
                s++;  //若果有不含大小寫字母數(shù)字的任意字符  s+1
            }
            switch(s){
                case 1:
                span.innerHTML = "弱";
                break;
                case 2:
                span.innerHTML = "中";
                break;
                case 3:
                span.innerHTML = "強(qiáng)";
                break;
                default:
                span.innerHTML = "";
            }
        }
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末晨炕,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子毫炉,更是在濱河造成了極大的恐慌瓮栗,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,036評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件瞄勾,死亡現(xiàn)場(chǎng)離奇詭異费奸,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)进陡,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,046評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門愿阐,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人趾疚,你說我怎么就攤上這事缨历∫栽蹋” “怎么了?”我有些...
    開封第一講書人閱讀 164,411評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵戈二,是天一觀的道長(zhǎng)舒裤。 經(jīng)常有香客問我,道長(zhǎng)觉吭,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,622評(píng)論 1 293
  • 正文 為了忘掉前任仆邓,我火速辦了婚禮鲜滩,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘节值。我一直安慰自己徙硅,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,661評(píng)論 6 392
  • 文/花漫 我一把揭開白布搞疗。 她就那樣靜靜地躺著嗓蘑,像睡著了一般。 火紅的嫁衣襯著肌膚如雪匿乃。 梳的紋絲不亂的頭發(fā)上桩皿,一...
    開封第一講書人閱讀 51,521評(píng)論 1 304
  • 那天,我揣著相機(jī)與錄音幢炸,去河邊找鬼泄隔。 笑死,一個(gè)胖子當(dāng)著我的面吹牛宛徊,可吹牛的內(nèi)容都是我干的佛嬉。 我是一名探鬼主播,決...
    沈念sama閱讀 40,288評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼闸天,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼暖呕!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起苞氮,我...
    開封第一講書人閱讀 39,200評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤湾揽,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后葱淳,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體钝腺,經(jīng)...
    沈念sama閱讀 45,644評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,837評(píng)論 3 336
  • 正文 我和宋清朗相戀三年赞厕,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了艳狐。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,953評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡皿桑,死狀恐怖毫目,靈堂內(nèi)的尸體忽然破棺而出蔬啡,到底是詐尸還是另有隱情,我是刑警寧澤镀虐,帶...
    沈念sama閱讀 35,673評(píng)論 5 346
  • 正文 年R本政府宣布箱蟆,位于F島的核電站,受9級(jí)特大地震影響刮便,放射性物質(zhì)發(fā)生泄漏空猜。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,281評(píng)論 3 329
  • 文/蒙蒙 一恨旱、第九天 我趴在偏房一處隱蔽的房頂上張望辈毯。 院中可真熱鬧,春花似錦搜贤、人聲如沸谆沃。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,889評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽唁影。三九已至,卻和暖如春掂名,著一層夾襖步出監(jiān)牢的瞬間据沈,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,011評(píng)論 1 269
  • 我被黑心中介騙來泰國打工铆隘, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留卓舵,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,119評(píng)論 3 370
  • 正文 我出身青樓膀钠,卻偏偏與公主長(zhǎng)得像掏湾,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子肿嘲,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,901評(píng)論 2 355

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

  • 推薦幾個(gè)正則表達(dá)式編輯器 Debuggex :https://www.debuggex.com/ PyRegex:...
    木易林1閱讀 11,494評(píng)論 9 151
  • 幾個(gè)正則表達(dá)式編輯器 Debuggex :https://www.debuggex.com/ PyRegex:ht...
    沒技術(shù)的BUG開發(fā)攻城獅閱讀 4,587評(píng)論 0 23
  • 初衷:看了很多視頻融击、文章,最后卻通通忘記了雳窟,別人的知識(shí)依舊是別人的尊浪,自己卻什么都沒獲得。此系列文章旨在加深自己的印...
    DCbryant閱讀 4,009評(píng)論 0 20
  • 正則表達(dá)式到底是什么東西封救?字符是計(jì)算機(jī)軟件處理文字時(shí)最基本的單位拇涤,可能是字母,數(shù)字誉结,標(biāo)點(diǎn)符號(hào)鹅士,空格,換行符惩坑,漢字等...
    獅子挽歌閱讀 2,147評(píng)論 0 9
  • 《春來瘦》 無端風(fēng)雨,早春二月趾痘,最難將息慢哈。想你,是唯一能夠取暖的事了永票。 而春水喧嘩是后來的事情卵贱,南山留給我的,當(dāng)然...
    阮小籍閱讀 327評(píng)論 7 13