正規表現は文字列の一致に使用されるパターンであり、文字列の検証、検索、置換などに使用できます。 JavaScript には正規表現のサポートが組み込まれています。この記事では、JavaScript で正規表現を使用する方法を紹介します。
正規表現は複雑なので、初めて使用する場合は混乱する可能性があります。ただし、基本的な構文と一般的な関数を理解していれば、それを使用して複雑な文字列の一致と置換の問題を解決できます。
1. 正規表現の基本構文
正規表現は一連の文字とメタキャラクターで構成され、メタキャラクターは一致ルールの指定に使用されます。最も基本的なメタ文字の一部を次に示します。
簡単な正規表現の例をいくつか示します。
Expression Matching content
/test/ test
/.at/ cat, hat, sat
/[ bc]at/ but, cat
/[0-9]*/ 1234567890
2. JavaScript の正規表現
JavaScript には正規表現のサポートが組み込まれています。オブジェクトを使用して正規表現オブジェクトを作成することも、String オブジェクトの正規メソッドを使用して文字列照合を実行することもできます。
RegExp オブジェクトのコンストラクターを使用して正規表現オブジェクトを作成できます。コンストラクターは 2 つのパラメーターを受け取ります。1 つは文字列の一致用です。モード、もう 1 つはオプションのフラグ文字列です。
例:
var pattern = /\d /g; //リテラル パターンを使用して正規表現オブジェクトを作成します
var pattern2 = new RegExp("\d ", " g "); //コンストラクターを使用して正規表現オブジェクトを作成します
上記の例では、正規表現 "/\d /g" と文字列 "\d " は同じであり、両方とも一致することを示しています。または複数の番号。
JavaScript では、String オブジェクトの match()、search()、replace()、および Split() メソッドを使用して実装できます。文字列のマッチング。
match() メソッド: match() メソッドは、正規表現に一致する文字列コンテンツを含む配列を返します。何も一致しない場合は、null が返されます。例:
var str = "hello world, hello JavaScript";
var pattern = /hello/;
var result = str.match(pattern);
console.log(result); // 出力[ "hello"]
search() メソッド: search() メソッドは、一致する文字列の開始位置を返します。何も一致しない場合は、-1 を返します。例:
var str = "hello world , hello JavaScript";
var pattern = /world/;
var result = str.search(pattern);
console.log(result); // 出力 6
replace( ) メソッド: replace() メソッドは、一致したテキスト コンテンツを置換し、置換された新しい文字列を返すために使用されます。例:
var str = "hello world, hello JavaScript";
var pattern = /hello/;
var result = str.replace(pattern, "hi");
console .log(result); // 出力 "こんにちは、世界、こんにちは JavaScript"
split() メソッド: Split() メソッドは、指定された区切り文字列または正規表現を使用して、文字列を文字列配列に分割します。分割位置を決めます。例:
var str = "リンゴ、バナナ、オレンジ";
var pattern = /[,]/;
var result = str.split(pattern);
コンソール。 log (result); // 出力 ["apple", "banana", "orange"]
JavaScript では、RegExp オブジェクトを使用できます。 test() メソッドは、文字列が正規表現に準拠しているかどうかをチェックします。 test() は true または false を返し、文字列が正規表現の要件を満たしているかどうかを示します。例:
var pattern = /\d /;
console.log(pattern.test("123")); // 出力 true
console.log(pattern.test(" 1a23 ")); // 出力 true
3. 正規表現の高度なアプリケーション
正規表現の高度な使用法が多数あり、より複雑な文字列の一致および置換機能を実現できます。一般的な高度なアプリケーションをいくつか示します。
正規表現 /(\d{3})-( \ など、括弧を使用してグループ化を示します。 d{3})-(\d{4})/ は、「123-456-7890」のような電話番号形式と一致します。ここで、(\d{3})、(\d{3})、および (\ d{4 }) これら 3 つのグループは、電話番号の市外局番、センター番号、サフィックス番号にそれぞれ一致します。
ゼロ幅アサーションとは、文字ではなく文字列の位置を照合することを指します。たとえば、正規表現 /cat(?=dog)/ は、「cat」の後に「dog」が続くものには一致しますが、「cat」の後に「dog」が続くものには一致しません。
テキストを置換するときに、$1、$2 などのプレースホルダーを使用して、一致結果の最初と 2 番目のグループを表すことができます。の上。たとえば、正規表現 /(\d{3})-(\d{3})-(\d{4})/ および "123-456-7890" は、"($1) $2-$3" に置き換えることができます。 " の場合、結果は "(123) 456-7890" になります。
4. 結論
正規表現は強力なパターン マッチング ツールであり、これを使用して文字列のマッチングや置換に関するさまざまな問題を処理する方法を学びましょう。 JavaScript では、RegExp オブジェクトと String オブジェクトの正規メソッドを使用して正規表現操作を実行できます。この記事では、正規表現の基本構文と一般的な応用例を紹介し、高度な応用例をいくつか示します。この記事を通じて、読者が JavaScript での正規表現の使用法を理解できることを願っています。
以上がJavaScript が正規表現を使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。