indexOf【順方向 文字列検索】メソッド
lastIndexOf【逆方向 文字列検索】メソッド
includes【部分文字列判定】メソッド
search【正規表現検索 (簡易)】メソッド
match【正規表現検索 (詳細)】メソッド

String.prototype.indexOf【順方向 文字列検索】

メモ

構文

indexOf( searchString, position ) 
indexOf( searchString [, position] ) 

  • searchString:検索文字列
  • position:検索開始位置 (0 ~ 【文字列長】)
    position補正値
    省略0
    position < 00
    【文字列長】 < position【文字列長】

  • 一致文字列位置
    戻り値説明
    0 ≦ 戻り値一致あり
    -1一致なし

var str = "あいうえおあいうえおあいうえお";
console.log(str.indexOf("うえ", 0));   // 出力:2
console.log(str.indexOf("うえ", 5));   // 出力:7
console.log(str.indexOf("うえ", 10));  // 出力:12
console.log(str.indexOf("うえ", 15));  // 出力:-1
console.log(str.indexOf("うえ", -99)); // 出力:2
console.log(str.indexOf("うえ", 99));  // 出力:-1
console.log(str.indexOf("うえ"));      // 出力:2

String.prototype.lastIndexOf【逆方向 文字列検索】

メモ

構文

lastIndexOf ( searchString, position ) 
lastIndexOf ( searchString [, position ] ) 

  • searchString:検索文字列
  • position:検索開始位置 (0 ~:indexOf() と同様 左からの位置)
    position補正値
    省略【文字列長】
    position < 00
    【文字列長】 < position【文字列長】

  • 一致文字列位置
    戻り値説明
    0 ≦ 戻り値一致あり
    -1一致なし

var str = "あいうえおあいうえおあいうえお";
console.log(str.lastIndexOf("うえ", 0));    // 出力:-1
console.log(str.lastIndexOf("うえ", 5));    // 出力:2
console.log(str.lastIndexOf("うえ", 10));   // 出力:7
console.log(str.lastIndexOf("うえ", 15));   // 出力:12
console.log(str.lastIndexOf("うえ", -99));  // 出力:-1
console.log(str.lastIndexOf("うえ", 99));   // 出力:12
console.log(str.lastIndexOf("うえ"));       // 出力:12

String.prototype.includes【部分文字列判定】

メモ

構文

includes ( searchString [ , position ] )

  • searchString:検索文字列 (正規表現不可)
  • position:検索開始位置
    説明
    0 ≦ start先頭からの文字位置 (0:先頭)
    【文字列長】 < start:文字列長
    start < 00 (先頭)

  • true:検索文字列を含む
  • false:検索文字列を含まない

var str = "あいうえお";
console.log(str.includes("いう"));    // 出力:true
console.log(str.includes("いう", 1)); // 出力:true
console.log(str.includes("いう", 2)); // 出力:false

var regEx = /い.*え/;
regEx[Symbol.match] = false;                 // RegExp[@@match]
console.log(str.includes(regEx));     // 出力:false
console.log(str.includes(/い.*え/));  // TypeError 例外

メモ

構文

search ( regexp )

  • 一致文字列位置
    戻り値説明
    0 ≦ 戻り値一致あり
    -1一致なし

var str = "あいうえおあいUえおあいuえお";
console.log(str.search(/い.え/));      // 出力:1
console.log(str.search(/きくけ/));     // 出力:-1
console.log(str.search("あいうえお")); // 出力:0
console.log(str.search("かきくけこ")); // 出力:-1

String.prototype.match【正規表現検索 (詳細)】

メモ

構文

match ( regexp )

  • 検索結果配列 (一致なし:null)
    'g'(グローバル検索) フラグ説明
    未指定[0]:最初の一致文字列
    [1] ~:グループ化で保存された部分文字列
    index:マッチ位置 (0~)
    input:入力の被検索文字列
    length:配列数
    (RegExp【正規表現】オブジェクトexec【検索】と同等の処理)
    指定[0] ~:全ての一致文字列

var str = "あいうえおあいUえおあいuえお";
console.log(str.match(/い.え/));      // 出力:["いうえ", index: 1, input: "あいうえおあいUえおあいuえお"]
console.log(str.match(/い.え/g));     // 出力:[ "いうえ", "いUえ", "いuえ" ]
console.log(str.match(/きくけ/g));    // 出力:null
console.log(str.match("あいうえお")); // 出力:["あいうえお", index: 0, input: "あいうえおあいUえおあいuえお"]
console.log(str.match("かきくけこ")); // 出力:null

関連