亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

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

李世贊 / 1120人閱讀

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

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

1 正則表達(dá)式的定義

RegExp()構(gòu)造函數(shù)

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

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

ECMAScript6 新特性——“正則的擴(kuò)展”

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

2 用于模式匹配的String方法

search()

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

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

replace()

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

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()

接收一個正則表達(dá)式,返回的是一個由匹配結(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ù)也可以是正則表達(dá)式:

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對象

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

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

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

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

相關(guān)文章

  • js正則表達(dá)式模式匹配

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

    Kerr1Gan 評論0 收藏0
  • JavaScript 中正則表達(dá)式

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

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

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

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

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

    zhjx922 評論0 收藏0

發(fā)表評論

0條評論

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