小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

js正則表達式的一些研究,截取兩個字符串中間的字符串

 tingx 2018-01-16

一個最常用的場景 截取兩個字符串中間的字符串

  var str = "iid0000ffr";
    var substr = str.match(/id(\S*)ff/);
    alert(substr2);

你會發(fā)現(xiàn)逗號后面是你要的東西

/S*表示多個字符串

為什么想要的東西在逗號后,也就是數(shù)組第二個.

是因為match的返回數(shù)組,第一個表示匹配的字符串,這里是包括id ff的,結果是id0000ff

第二個是子正則表達式,什么是子正則表達式,()里面的內容就是子正則表達式,就是指\s*,這才是我們要的東西

 

我們還可以寫復雜點,

var str2='erwab999999d789eeff';

 var substr = str2.match(/ab\S*d(\S*)ff/);

這個表示以ab開始d結尾的字符串 同ff字符串之間的字符串,輸出:["ab999999d789eeff", "789ee"]

 

其實,在高級語言里,我們會用一個叫數(shù)量詞的概念

就是

(?=abc)這表示以abc結尾的前面的字符串,但不包括abc

  var str = "iid0000ffr";
    var substr = str.match(/(\S*)(?=ff)/);
    alert(substr2);

但你不能直接寫

   var substr = str.match(/(?=ff)/); 

因為它只管邏輯,但不會輸出.

這種東西叫正向肯定預查,就是查***前面的字符串,

很多高級語言里面還有叫"反向肯定預查",就是叫***后面的字符串,一般是這樣寫

?<=abc 不過可憐js不支持

    本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內容均由用戶發(fā)布,不代表本站觀點。請注意甄別內容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權內容,請點擊一鍵舉報。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多