成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

JS語言核心——“正則表達式的模式匹配”

李世贊 / 1080人閱讀

摘要:正則表達式一個描述字符模式的對象正則表達式的定義構造函數(shù)正則表達式直接量一對斜杠新特性正則的擴展引用類型類型的注意要點用于模式匹配的方法不支持全局搜索忽略表達式參數(shù)中的修飾符兩個參數(shù)第一個是正則表達式,第二個是要替換的字符串接收一個正則表達

正則表達式(regular expression):一個描述字符模式的對象

1 正則表達式的定義

RegExp()構造函數(shù)

正則表達式直接量(一對斜杠//

var patern0 = //;
var patern1 = new RegExp();

ECMAScript6 新特性——“正則的擴展”

JavaScript引用類型——“RegExp類型”的注意要點

2 用于模式匹配的String方法

search()

不支持全局搜索(忽略表達式參數(shù)中的修飾符g)

var str = "JavaScript notebook";
console.log(str.search(/script/i)); //4

replace()

兩個參數(shù)(第一個是正則表達式,第二個是要替換的字符串)

var str = "javascript notebook";
console.log(str.replace(/javascript/g, "JavaScript")); //JavaScript notebook 

var str = "javascript notebook";
console.log(str.replace(/j(ava)script/, "J$1")); //Java notebook 

match()

接收一個正則表達式,返回的是一個由匹配結(jié)果組成的數(shù)組

var str = "javascript notebook";
console.log(str.match(/S+/g).join("&")); //javascript¬ebook 

var str = "http://www.example.com/ajax.html";
var a = str.match(/(w+)://([w.]+)/(S*)/);
console.log(a[0]);
console.log(a[1]);
console.log(a[2]);
console.log(a[3]);
//http://www.example.com/ajax.html 
//http 
//www.example.com 
//ajax.html 

split()

將調(diào)用它的字符串拆分為一個子串組成的數(shù)組,使用的分隔符是該方法的參數(shù):

var str = "http://www.example.com/ajax.html";
var a = str.split("/");
a.map(function (item, index, array) {
    console.log(item, index);
});
//http: 0 
// 1 
//www.example.com 2 
//ajax.html 3 

方法的參數(shù)也可以是正則表達式:

var str = "http://www.example.com/ajax.html";
var a = str.split(/[.:/]/);
console.log(a.toString());
a.forEach(function (item) {
    if (item) {
        console.log(item);
    }
});
//http,,,www,example,com,ajax,html 
//http 
//www 
//example 
//com 
//ajax 
//html 
3 RegExp對象

如果待檢索的字符串是由用于輸入的,就必須使用構造函數(shù),在程序運行時創(chuàng)建正則表達式

3.1 RegExp屬性

source;

global;

ignoreCase;

multiline;

lastIndex;

3.2 RegExp方法

exec()

var str = "javascript in java or script";
var patern = /javaw*/g;
var a1 = patern.exec(str);
console.log(a1.toString());
console.log(patern.lastIndex); //lastIndex為10
var a2 = patern.exec(str);
console.log(a2.toString());
console.log(patern.lastIndex); //lastIndex為18
//javascript 
//10 
//java 
//18 

test()

var str = "javascript in java or script";
var patern = /javaw*/g;
var a = patern.test(str);
console.log(a); //True

文章版權歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/79128.html

相關文章

  • js正則表達式模式匹配

    摘要:一正則表達式的定義正則表達式是一個描述字符模式的對象對象更多的是通過一種特殊的直接量語法來創(chuàng)建正則表達式的模式規(guī)則是由一個字符序列組成的包括所有字母和數(shù)字在內(nèi)大多數(shù)的字符都是按照直接量僅描述待匹配字符的二直接量字符正則表達式中的所有字母和數(shù) 一.正則表達式的定義 1.正則表達式(regular expression)是一個描述字符模式的對象.2.RegExp對象更多的是通過一種特殊的直...

    Kerr1Gan 評論0 收藏0
  • JavaScript 中正則表達式

    摘要:正則表達式的意義中的正則表達式使用表示,可以使用構造函數(shù)來創(chuàng)建對象,不過對象更多的是通過一種特殊的直接量語法來創(chuàng)建。用構造函數(shù)也可以定義一個與之等價的正則表達式,代碼如下正則表達式的模式規(guī)則是由一個字符序列組成的。 正則表達式的模式匹配 正則表達式(regular expression)是一個描述字符模式的對象。javascript的RegExp對象表示正則表達式,String和Reg...

    _Dreams 評論0 收藏0
  • 搞懂nginxrewrite模塊

    摘要:非標準碼關閉連接而不發(fā)送響應報頭。指令按照它們在配置文件中出現(xiàn)的順序執(zhí)行??梢允褂脴酥緛斫K止指令的進一步處理。返回永久重定向。發(fā)送如下請求控制是否記錄有關未初始化變量的警告。 之前在配置nginx時,總是遇到rewrite指令的last和break標識的問題,看到的資料大都是last 基本上都用這個 Flag,break 中止 Rewirte,不在繼續(xù)匹配??赐曛筮€是有點懵,后來看了...

    wangshijun 評論0 收藏0
  • Nginx 學習總結(jié)(4)—— Rewrite 模塊

    摘要:根據(jù)官方文檔說明,模塊是用于使用正則表達式更改請求,有條件地選擇配置,并返回重定向。指令停止執(zhí)行模塊的指令集,但是其他模塊指令不受影響。可以使用標志來終止指令的進一步處理。 這是 Nginx 學習總結(jié)的第四篇,上一篇介紹到了 Nginx 學習總結(jié)(3) —— Location 模塊,這一篇會對Rewrite模塊 做一些總結(jié)。根據(jù)官方文檔說明,Rewrite 模塊是用于使用 PCRE 正...

    zhjx922 評論0 收藏0

發(fā)表評論

0條評論

李世贊

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<