ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScriptの一致とはどういう意味ですか?
javascript match は、文字列内の指定された値を取得するか、1 つ以上の正規表現の一致を見つけるために使用されるメソッドです。このメソッドは、indexOf() および lastIndexOf() に似ていますが、指定された値を返します。文字列の位置ではなく値です。
この記事の動作環境: Windows7 システム、JavaScript バージョン 1.8.5、Dell G3 コンピューター。
match の定義と使用法
match() メソッドは、文字列内の指定された値を取得したり、1 つ以上の正規表現との一致を検索したりできます。
このメソッドは、indexOf() および lastIndexOf() に似ていますが、文字列の位置の代わりに指定された値を返します。
構文
stringObject.match(searchvalue) stringObject.match(regexp)
パラメータ
searchvalue 必須。取得する文字列値を指定します。
正規表現は必須です。一致するパターンを指定する RegExp オブジェクト。パラメーターが RegExp オブジェクトではない場合は、まずそれを RegExp コンストラクターに渡して RegExp オブジェクトに変換する必要があります。
戻り値
一致結果を格納する配列。この配列の内容は、regexp にグローバル フラグ g があるかどうかによって異なります。
説明
match() メソッドは、文字列 stringObject を取得して、正規表現に一致する 1 つ以上のテキストを検索します。このメソッドの動作は、正規表現にフラグ g があるかどうかに大きく依存します。
正規表現にフラグ g がない場合、match() メソッドは stringObject 内で 1 つの一致のみを実行できます。一致するテキストが見つからない場合、match() は null を返します。それ以外の場合は、見つかった一致するテキストに関する情報を含む配列を返します。配列の 0 番目の要素には一致するテキストが保持され、残りの要素には正規表現の部分表現に一致するテキストが保持されます。これらの通常の配列要素に加えて、返される配列には 2 つのオブジェクト プロパティが含まれます。 Index 属性は stringObject 内の一致するテキストの開始文字の位置を宣言し、input 属性は stringObject への参照を宣言します。
正規表現にフラグ g がある場合、match() メソッドはグローバル検索を実行し、stringObject 内で一致するすべての部分文字列を検索します。一致する部分文字列が見つからない場合は、null が返されます。 1 つ以上の一致する部分文字列が見つかった場合は、配列が返されます。ただし、グローバル マッチングで返される配列の内容は前者とは大きく異なり、配列要素には一致するすべての部分文字列が stringObject に格納され、インデックス属性や入力属性はありません。
注: グローバル検索モードでは、match() は部分式と一致するテキストに関する情報を提供しません。また、一致する各部分文字列の位置も宣言しません。このグローバルに取得された情報が必要な場合は、RegExp.exec() を使用できます。
[推奨学習: js 基本チュートリアル]
例
例 1
この例では、「Hello world!」でさまざまな検索を実行します:
<script type="text/javascript"> var str="Hello world!" document.write(str.match("world") + "<br />") document.write(str.match("World") + "<br />") document.write(str.match("worlld") + "<br />") document.write(str.match("world!")) </script>
出力:
world null null world!
例 2
Inこの例では、グローバルに一致する正規表現を使用して、文字列内のすべての数値を取得します:
<script type="text/javascript"> var str="1 plus 2 equal 3" document.write(str.match(/\d+/g)) </script>
出力:
1,2,3
以上がJavaScriptの一致とはどういう意味ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。