javascript字串匹配正規表示式方法

2021-06-21 04:34:50 字數 986 閱讀 5421

1、search(reg):若匹配成功,該方法返回匹配成功的正規表示式第一次出現在字串中的位置!若匹配不成功,將會返回-1!

var str = "abcd1223abd";

var reg = /\d+/;

str.search(reg);//返回乙個位置序號:4

對應到字串的簡易操作方法是:indexof();

對應到正規表示式的操作是:exec方法,該方法返回乙個類陣列物件:

注意:exec方法,如果對正規表示式使用g,並不會返回全文中匹配成功的物件,exec方法始終只返回第乙個!!!如果需要匹配全文,需要使用while迴圈!

exec方法詳細使用請參考: 和

var num = /\d+/;

var str = "12sdf123sdf";

var r = num.exec(str);

console.log(r);//輸出:["12", index: 0, input: "12sdf123sdf"]。可以通過r[0]訪問匹配值,r.index訪問匹配位置,r.input訪問源字串

2、match(reg):匹配正規表示式,並且以陣列的形式返回匹配的選項

var num = /\d+/g;//加上g的話,就是全域性匹配!

var str = "a3 sdf 45 df";

str.match(num);//返回["3", "45"]

對應正規表示式的操作:exec方法,若需要全域性匹配,需要使用while迴圈

3、replace方法:略

4、split方法:

var num = /\d+/;

var str = "1jk3kjk5jk23";

var result = str.split(num);

console.log(result);

字串匹配

題目描述 讀入資料string 然後讀入乙個短字串。要求查詢string 中和短字串的所有匹配,輸出行號 匹配字串。匹配時不區分大小寫,並且可以有乙個用中括號表示的模式匹配。如 aa 123 bb 就是說aa1bb aa2bb aa3bb都算匹配。輸入 輸入有多組資料。每組資料第一行輸入n 1 n ...

字串匹配

time limit 1000ms memory limit 65536k 給定兩個字串string1和string2,判斷string2是否為string1的子串。輸入包含多組資料,每組測試資料報含兩行,第一行代表string1,第二行代表string2,string1和string2中保證不出現...

字串匹配

面試題 給一串很長的字串,要求找到符合要求的字串,例如目的串 123 1 3 2 12 3 這些都要找出來 思路一 利用兩層迴圈,逐個查詢目的串中的字元,比如先查詢字元 1 是否在長字串中,再查詢 2 是否在長字串中,直到目的串遇到 0 是 include include include int m...