A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/String/search below:

String.prototype.search() - JavaScript | MDN

String.prototype.search()

Baseline Widely available

search() は String 値のメソッドで、正規表現とこの文字列の一致する箇所を検索し、文字列内の最初に一致する箇所の位置を返します。

試してみましょう
const paragraph = "I think Ruth's dog is cuter than your dog!";

// Anything not a word character, whitespace or apostrophe
const regex = /[^\w\s']/g;

console.log(paragraph.search(regex));
// Expected output: 41

console.log(paragraph[paragraph.search(regex)]);
// Expected output: "!"
構文 引数
regexp

正規表現オブジェクト、または Symbol.search メソッドを持つ任意のオブジェクトです。

regexp が RegExp オブジェクトでなく、Symbol.search メソッドもなかった場合は、RegExp オブジェクトに new RegExp(regexp) を使用して暗黙的に変換されます。

返値

与えられた文字列と正規表現の間で最初に一致した箇所のインデックスを返します。一致しなかった場合は -1 を返します。

解説

String.prototype.search() 自体の実装はとてもシンプルです。引数の文字列を最初の引数として Symbol.search メソッドを呼び出すだけです。実際の実装は RegExp.prototype[Symbol.search]() から来ています。

regexp の g フラグは search() の結果には影響がなく、検索は常に正規表現の lastIndex が 0 であるかのように行われます。search() の動作についての詳しい情報は、RegExp.prototype[Symbol.search]() を参照してください。

パターンが見つかるかどうかを知りたい場合、かつ、文字列内のインデックスを知りたい場合は、search() を使用してください。

例 search() の使用

次の例は、2 つの異なる正規表現オブジェクトで文字列を検索し、成功した検索(正の値)と失敗した検索 (-1) を表示します。

const str = "hey JudE";
const re = /[A-Z]/;
const reDot = /[.]/;
console.log(str.search(re)); // 最初の大文字 "J" のインデックスである 4 を返します
console.log(str.search(reDot)); // ドット記号 '.' が見つからないので -1 を返します
仕様書 ブラウザーの互換性 関連情報

RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4