正規表現は、文字のパターンを記述するオブジェクトです。
正規表現は、パターン マッチング、文字列の取得と置換に使用され、文字列のパターン マッチングのための強力なツールです。
文法
var patt=new RegExp(pattern,modifiers);
またはさらに単純:
var patt=/pattern/modifiers;
- pattern (パターン) は式のパターンを説明します。
- 修飾子 (修飾子) は、グローバル マッチング、大文字と小文字を区別するマッチング、および複数行のマッチングを指定するために使用されます。
注:コンストラクターを使用して通常のオブジェクトを作成する場合は、通常の文字エスケープ規則 (前にバックスラッシュ \ が付く) が必要です。たとえば、次は同等です。
var re = new RegExp("\\w+"); var re = /\w+/;
RegExp オブジェクトの詳細については、 JavaScript RegExp オブジェクトのチュートリアルを参照してください。
修飾子
修飾子は、大文字と小文字を区別してグロブ一致を実行するために使用されます。
修飾子 | 説明する |
---|---|
私 | 大文字と小文字を区別しない一致を実行します。 |
g | グローバル一致を実行します (最初に見つかった一致で停止するのではなく、すべての一致を検索します)。 |
メートル | 複数行の一致を実行します。 |
角括弧
角括弧は、文字の範囲を検索するために使用されます。
表現 | 説明する |
---|---|
[ABC] | 角括弧内の任意の文字を検索します。 |
[^abc] | 角括弧の間にない文字を検索します。 |
[0-9] | 0 から 9 までの任意の数字を見つけます。 |
[az] | 小文字の a から小文字の z までの任意の文字を検索します。 |
[AZ] | 大文字の A から大文字の Z までの任意の文字を検索します。 |
[アズ] | 大文字の A から小文字の z までの任意の文字を検索します。 |
[adgk] | 指定されたセット内の任意の文字を検索します。 |
[^adgk] | 指定されたセットの外にある文字を検索します。 |
(赤|青|緑) | 指定されたオプションを検索します。 |
メタキャラクター
メタキャラクターは特別な意味を持つ文字です。
メタキャラクター | 説明する |
---|---|
。 | 改行と行末文字を除く単一の文字を検索します。 |
\w | 数字、文字、アンダースコアを検索します。 |
\W | 単語以外の文字を検索します。 |
\d | 数字を見つけます。 |
\D | 数字以外の文字を検索します。 |
\s | 空白文字を検索します。 |
\S | 空白以外の文字を検索します。 |
\b | 単語の境界を一致させます。 |
\B | 単語以外の境界と一致します。 |
\0 | NULL 文字を検索します。 |
\n | 改行を見つけます。 |
\f | フォームブレイクを見つけます。 |
\r | キャリッジリターンを探します。 |
\t | タブを見つけます。 |
\v | 垂直タブを見つけます。 |
\xxx | 8 進数 xxx で指定された文字を検索します。 |
\xdd | 16 進数 dd で指定された文字を検索します。 |
\uxxxx | 16 進数 xxxx で指定された Unicode 文字を検索します。 |
数量詞
数量詞 | 説明する |
---|---|
n+ | 少なくとも 1 つの n を含む任意の文字列と一致します。 たとえば、/a+/ は、「candy」の「a」、「caaaaaandy」のすべての「a」に一致します。 |
な* | 0 個以上の n を含む任意の文字列と一致します。 たとえば、/bo*/ は、「A ghost booooed」の「boooo」、「A Bird warbled」の「b」に一致しますが、「A goat grooted」には一致しません。 |
ん? | 0 または 1 つの n を含む任意の文字列と一致します。 たとえば、/e?le?/ は、「angel」の「el」と「angle」の「le」に一致します。 |
n{X} | X n のシーケンスを含む文字列と一致します。 たとえば、/a{2}/ は、「candy」の「a」とは一致しませんが、「caandy」の 2 つの「a」と一致し、「caaandy」の最初の 2 つの「a」と一致します。 |
n{X,} | X は正の整数です。前のパターン n が少なくとも X 回連続して出現する場合に一致します。 たとえば、/a{2,}/ は、「candy」の「a」には一致しませんが、「caandy」と「caaaaaaandy」のすべての「a」に一致します。 |
n{X,Y} | X と Y は正の整数です。先行するパターン n の少なくとも X 個、最大で Y 個の連続した出現と一致します。 たとえば、/a{1,3}/ は、「cndy」とは一致しませんが、「candy」の「a」と一致し、「caandy」の 2 つの「a」と一致し、「caaaaaaaandy」の最初の 3 つの「a」と一致します。 。「caaaaaandy」と一致する場合、元の文字列にはさらに「a」が含まれている場合でも、一致は「aaa」になることに注意してください。 |
n$ | n で終わる任意の文字列と一致します。 |
^n | n で始まる任意の文字列と一致します。 |
?=n | 指定された文字列 n の直後に続く任意の文字列と一致します。 |
?!n | 指定された文字列 n が直後に続かない任意の文字列と一致します。 |
RegExp オブジェクトのメソッド
方法 | 説明する |
---|---|
コンパイル | バージョン 1.5 では非推奨になりました。正規表現をコンパイルします。 |
実行する | 文字列で指定された値を取得します。見つかった値を返し、その位置を決定します。 |
テスト | 文字列で指定された値を取得します。true または false を返します。 |
正規表現の文字列を返します。 |
正規表現をサポートする String オブジェクトのメソッド
方法 | 説明する | FF | IE |
---|---|---|---|
検索 | 正規表現に一致する値を取得します。 | 1 | 4 |
マッチ | 1 つ以上の正規表現に一致するものを検索します。 | 1 | 4 |
交換する | 正規表現に一致する部分文字列を置換します。 | 1 | 4 |
スプリット | 文字列を文字列の配列に分割します。 | 1 | 4 |
RegExp オブジェクトのプロパティ
属性 | 説明する |
---|---|
constructor | RegExp オブジェクトを作成するためのプロトタイプである関数を返します。 |
グローバル | 「g」修飾子が設定されているかどうかを確認します |
無視するケース | 「i」修飾子が設定されているかどうかを確認します |
lastIndex | 次の一致の開始位置を指定するために使用されます |
複数行 | 「m」修飾子が設定されているかどうかを確認します |
ソース | 正規表現の一致パターンを返します。 |