Get to know MDN better
このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2015年7月.
正規表現オブジェクト、または Symbol.match を持つ任意のオブジェクトです。
regexp が RegExp 以外のオブジェクトであった場合、暗黙的に RegExp への変換が new RegExp(regexp) を使用して行われます。
一切引数を与えずに match() メソッドを使った場合、空文字列 1 つを持つ Array、[""] が得られます。これは match(/(?:)/) と同じになるからです。
Array を返します。これはグローバル (g) フラグの有無によって内容が変わります。一致するものが見つからなかった場合は null を返します。
String.prototype.match の実装は、引数に対応する Symbol.match メソッドを、最初の引数として文字列を指定して呼び出すだけというもので、それ以外にも特に何も行いません。実際の実装は RegExp.prototype[Symbol.match]() から来ています。
正規表現が渡されたときの match() の意味についての詳しい情報は、RegExp.prototype[Symbol.match]() を参照してください。
以下の例において、 match() は "Chapter" とそれに続く 1 桁以上の数字、それに続く 0 回以上の小数点と数字を見つけるために使われています。
正規表現が i フラグを含んでいるので、大文字と小文字の違いは無視されます。
上の照合結果では、'see Chapter 3.4.5.1' が一致する文字列全体です。 'Chapter 3.4.5.1' は (chapter \d+(\.\d)*) によって捕捉されました。 '.1' は (\.\d) によって捕捉された最後の値です。 index プロパティ (22) は一致する文字列全体の 0 基点のインデックスです。 input プロパティは解釈できた元の文字列です。
以下の例は、 g と i フラグを match() で使用した実例です。 A から E までと、 a から e までのすべての文字が返され、それぞれが配列の個々の要素に入ります。
メモ: String.prototype.matchAll() とフラグを用いた高度な検索も参照してください。
名前付きキャプチャグループに対応しているブラウザーでは、次のコードは "fox" または "cat" を animal という名前のグループに入れます。
オブジェクトに Symbol.match メソッドがある場合、カスタムマッチャーとして使用することができます。 Symbol.match の返値が match() の返値になります。
正規表現 regexp 引数が文字列または数値の場合、RegExp に new RegExp(regexp) を使用して暗黙的に変換されます。
特殊文字が適切にエスケープされていないと、予期しない結果になることがあります。
正規表現中の . はどのような文字にも一致するので、これは一致します。 ドット文字にのみ一致するようにするには、入力文字列をエスケープする必要があります。
| ECMAScript® 2027 Language Specification # sec-string.prototype.match |
Enable JavaScript to view this browser compatibility table.
This page was last modified on 2025年8月22日 by MDN contributors.
Your blueprint for a better internet.
Visit Mozilla Corporation’s not-for-profit parent, the Mozilla Foundation.
Portions of this content are ©1998–2026 by individual mozilla.org contributors. Content available under a Creative Commons license.