国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 課堂 > 小程序 > 正文

微信小程序框架功能之正則表達(dá)式(XRegExp )

2020-03-21 16:27:23
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

XRegExp 是一個(gè)開(kāi)源的JavaScript 庫(kù)提供一個(gè)參數(shù)化、可擴(kuò)展的支持各種瀏覽器的正則表達(dá)式的實(shí)現(xiàn)庫(kù),支持附加語(yǔ)法、標(biāo)志以及方法。

XRegExp

XRegExp是一個(gè)為JS的正則表達(dá)式提供擴(kuò)展功能的庫(kù), 調(diào)用之后可以彌補(bǔ)原生JS在正則方面的一些不足,也在很大程度上增強(qiáng)了JS正則的功能。它解決了瀏覽器之間正則的兼容問(wèn)題,且支持原生ES6正則語(yǔ)法。

XRegExp的主要特性:

擴(kuò)展的正則語(yǔ)法,包括支持命名的捕獲組以及更強(qiáng)大的文本替換

增加修飾符(flags)s支持單行模式;x 忽略空格以及行注釋;n 明確捕獲組模式;A 支持21位Unicode匹配

提供一套函數(shù)簡(jiǎn)化正則處理

解決跨瀏覽器的正則兼容問(wèn)題

在此基礎(chǔ)上提供擴(kuò)展(addons)支持更多的正則語(yǔ)法和功能

XRegExp 使用

XRegExp 的最主要的 API 是構(gòu)造函數(shù),語(yǔ)法如下:

XRegExp(pattern, [flags])

pattern參數(shù)為字符型的正則表達(dá)式

[flags]為可選的正則修飾符,當(dāng)然也是字符型,它支持原生的修飾符以及XRegExp中的擴(kuò)展修飾符

返回值為被擴(kuò)展的正則對(duì)象。
 

  1.     var date = XRegExp('(?<year>  [0-9]{4} ) -?  # year  /n/ 
  2.  
  3.                 (?<month> [0-9]{2} ) -?  # month /n/ 
  4.  
  5.                 (?<day>   [0-9]{2} )     # day   ', 'x');    var match = XRegExp.exec('2015-02-22', date);    console.log(match.year); // 輸出:2015 
  6.  
  7. forEach 
  8.  
  9.     var evens = []; 
  10.  
  11.     XRegExp.forEach('1a2345', //d/, function (match, i) {        if (i % 2) evens.push(+match[0]); 
  12.  
  13.     });    console.log(evens); // 輸出:[2, 4] 
  14.  
  15. matchChain 
  16.  
  17.     var result1 = XRegExp.matchChain('1 <b>2</b> 3 <b>4 a 56</b>', [ 
  18.  
  19.         XRegExp('(?is)<b>.*?</b>'),        //d+/ 
  20.  
  21.     ]);    console.log(result1); // 輸出:["2", "4", "56"] 
  22.  
  23.     var html = '<a href="https://xregexp.com/">XRegExp</a>' +        '<a href="https://www.google.com/">Google</a>';    var result2 = XRegExp.matchChain(html, [ 
  24.  
  25.         { regex: /<a href="([^"]+)">/i, backref: 1 }, 
  26.  
  27.         { regex: XRegExp('(?i)^https?://(?<domain>[^/?#]+)'), backref: 'domain' } 
  28.  
  29.     ]);    console.log(result2); // 輸出:["xregexp.com", "www.google.com"] 
  30.  
  31. union 
  32.  
  33.     var result3 = XRegExp.union(['a+b*c', /(dog)/1/, /(cat)/1/], 'i');    console.log(result3); // 輸出:/a/+b/*c|(dog)/1|(cat)/2/i 
  34.  
  35. exec 
  36.  
  37.     var pos = 3;    var result4 = [];    while (match = XRegExp.exec('<1><2><3><4>5<6>', /<(/d+)>/, pos, 'sticky')) { 
  38.  
  39.         result4.push(match[1]); 
  40.  
  41.         pos = match.index + match[0].length; 
  42.  
  43.     }    console.log(result4);  // 輸出:['2', '3', '4'] 
  44.  
  45. replace 
  46.  
  47.     var result5 = XRegExp.replace('2015-02-22', date, '${month}/${day}/${year}');    console.log(result5); 
  48.  
  49.     var result6 = XRegExp.replace('2015-02-22', date, function (match) {        return match.month + '/' + match.day + '/' + match.year; 
  50.  
  51.     });    console.log(result6); 

發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 彩票| 师宗县| 吉林市| 墨竹工卡县| 滁州市| 南开区| 田阳县| 盐城市| 万盛区| 清丰县| 钟山县| 波密县| 会理县| 祥云县| 吴川市| 樟树市| 沛县| 讷河市| 太康县| 榆树市| 衡山县| 阳信县| 甘孜县| 河间市| 沙洋县| 彰化县| 北票市| 安乡县| 舒城县| 开远市| 台北县| 双牌县| 额尔古纳市| 榆社县| 清远市| 盐城市| 肥西县| 安丘市| 沐川县| 嘉峪关市| 雅安市|