0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【JavaScript基礎】文字列を検索するメソッド

Posted at

JavaScriptにおける「文字列を検索する」メソッドについて、自己の忘備録としてまとめています。

参考URL

参考著書

文字列の検索① 〜インデックスを調べる〜

文字列がどの位置にあるかを調べたい時に使用するメソッドです。

indexOf()

indexOf()メソッドは、「対象の文字列」から「検索する文字列」が最初に現れたインデックス(位置)を返します。
インデックスは0から始まり、値が見つからない場合は−1を返します。

const myStr = 'JavaScriptの基礎';

//  検索した文字が含まれる場合
const result1 = myStr.indexOf('JavaScript');
console.log(result1); // 結果:0

const result2 = myStr.indexOf('基礎');
console.log(result2); //結果:11

//検索した文字が含まれない場合
const result3 = myStr.indexOf('CSS');
console.log(result3); //結果:-1

const result4 = myStr.indexOf('j')
console.log(result4); //結果:-1  => 大文字と小文字が区別されるため

lastIndexOf()

lastIndexOf()メソッドは、「対象の文字列」から「検索する文字列」が最後に現れたインデックス(位置)を返します。

const myStr = 'JavaScriptの基礎';

const result1 = myStr.lastIndexOf('a');
console.log(result1); //結果:3

検索開始インデックスを指定すると、指定されたインデックスから検索します。
インデックスを省略した場合は、検索開始のインデックスは0となります。

const myStr = 'JavaScriptの基礎';

const result1 = myStr.indexOf('JavaScript', 3)
console.log(result1); //結果:-1

search()

search()メソッドは、正規表現で一致するかどうかを調べるメソッドです。

const myStr = 'JavaScriptの基礎';

const result1 = myStr.search(/JavaScript/)
console.log(result1); //結果:0

const result2 = myStr.search(/CSS/)
console.log(result2); //結果:1-

文字列の検索② 〜含まれているかを調べる〜

文字列が含まれているか調べたい時や、入力フォームなどで不適切な語句が含まれていないかを調べるときに使用します。

includes()

includes()メソッドは、文字列がどこかに含まれている場合にtrueとなります。

const myStr = 'JavaScriptの基礎';

const result = myStr.includes('JavaScript')
console.log(result); //結果:true

startsWith()

startsWith()メソッドは、文字列の最初が引数と同じであるかどうかを調べます。

const myStr = 'JavaScriptの基礎';

const result1 = myStr.startsWith('JavaScript');
console.log(result1); //結果:true

const result2 = myStr.startsWith('基礎');
console.log(result2); //結果:false

endsWith()

endsWith()メソッドは、文字列の末尾が引数と同じであるかどうかを調べます。

const myStr = 'JavaScriptの基礎';

const result1 = myStr.endsWith('JavaScript');
console.log(result1); //結果:false

const result2 = myStr.endsWith('基礎');
console.log(result2); //結果:true
0
2
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?