javascript文字列と正規表現のマッチング方法

1240 ワード

1、search(reg):マッチングに成功したら、この方法はマッチングに成功した正規表現が初めて文字列に現れた位置を返します.マッチングが成功しないと-1に戻ります.
var str = "abcd1223abd";
var reg = /\d+/;
str.search(reg);//        :4
文字列に対応する簡易操作方法は、indexOf();
正規表現に対応する操作は、クラスの配列オブジェクトを返します.
注意:execメソッドは、正規表現に対してgを使うと、全文中のマッチングが成功したオブジェクトに戻りません.execメソッドは常に最初のものに戻ります.全文に合わせるには、whileループを使う必要があります.
exec方法の詳細な使用については、以下を参照してください.http://www.w3school.com.cn/jsref/jsref_exec_regexp.aspとhttp://www.cnblogs.com/xiehuiqi220/archive/2008/12/01/1327487.html
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、スプリットの方法:
var num = /\d+/;
var str = "1jk3kjk5jk23";
var result = str.split(num);
console.log(result);
参考資料:
http://www.w3school.com.cn/jsref/jsref_OBregexp.asp
http://www.w3school.com.cn/js/js_OBregexp.asp