説明:lastIndexプロパティの規定のための定期的な開始位置の次の試合。
注意: このプロパティはgフラグを使用するように設定されています。
結果が最後にregexp.exec()とRegExp.testの処理により一致している()が見つかり、それらが起点lastIndexのプロパティ次の検索のような位置と呼ばれます。このように、繰り返して、すべてのテキスト文字列に一致するを通じて、これらの2つのメソッドを呼び出します。
注意:このプロパティは読み書き可能です。限り、検索を開始するの次のターゲット文字列として、あなたはそれを設定することができます。メソッドのexec()またはテスト()は、マッチテキストを見つけることができなかったときは、自動的に0 lastIndexプロパティにリセットされます。
例1:「AIN」をサブストリンググローバルストリングを試してみて、そしてlastIndexの財産が完了した後に試合を出力します。
するvar strが= 「スペインの雨は主に平野にとどまります」。 VAR patt1 = / AIN / G; しばらく(patt1.test(STR)== 真) { document.writeを(" 今ではアイン'が見つかりインデックス:" + patt1.lastIndex)。 document.write(" <BR> " ); }。
実施例2:最後に検索された場合、繰り返し取得し、lastIndexの位置をプリントアウトし、検索に沿ってスクラッチからそれを取得しません
VAR STR = 「スペインの雨がまま」。 VAR PATT = / AIN / G; console.log(patt.test(文字列))// 真 はconsole.log(patt.lastIndex)// 8 はconsole.log(patt.test(文字列))// 真 はconsole.log(patt.lastIndex)// 17 console.log(patt.test(文字列))// 偽 にconsole.log(patt.lastIndex)// 0 はconsole.log(patt.test(文字列))// 真 はconsole.log(patt.lastIndex)// 8
例3:原因によるlastIndexのバグを回避する方法:常にこの問題を回避することができ、新たな正規表現を作成します
VAR STR = 「スペインの雨がまま」。 console.log( /ain/g.test(str))// 真 はconsole.log(/ain/g.lastIndex)// 0 はconsole.log(/ain/g.test(文字列))// 真の コンソール。 (/ain/g.lastIndex)ログイン// 0 はconsole.log(/ain/g.test(文字列))// 偽 にconsole.log(/ain/g.lastIndex)// 0 はconsole.log(/ AIN / g.test(文字列))// 真 はconsole.log(/ain/g.lastIndex)// 0