JavaScript RegExpリファレンスマニュアル
- 前のページ JS Promise
- 次のページ JS Set
RegExpオブジェクト
正則表現は文字パターンです。
このパターンはテキストに対してパターンマッチングの「検索と置換」機能を実行するために使用されます。
JavaScriptでは、RegExpオブジェクトは属性とメソッドを持つパターンです。
文法
/pattern/modifier(s);
例
let pattern = /codew3c/i;
例説明:
codew3c | 検索するパターン |
/codew3c/ | 正則表現 |
/codew3c/i | 不区別大小文字の正則表現 |
正則表現に関する知識が必要な場合は、私たちの JavaScript RegExp チュートリアル。
修飾子
修飾子は大文字と小文字を区別しないおよびグローバルな検索を実行するために使用されます:
修飾子 | 説明 |
---|---|
g | グローバルマッチングを実行します(最初のマッチング後に停止するのではなく、すべてのマッチングを検索します)。 |
i | 大文字と小文字を区別しないマッチングを実行します。 |
d | 部分文字列のマッチングを実行します。 |
m | 複数行のマッチングを実行します。 |
方括号
方括号は特定範囲の文字を検索するために使用されます:
表达式 | 説明 |
---|---|
[abc] | 括弧内の任意の文字を検索します。 |
[^abc] | 括弧内にない任意の文字を検索します。 |
[0-9] | 0から9までの数字を検索します。 |
[^0-9] | 括号内にない文字(非数字の任意の文字)を検出します。 |
(x|y) | 指定されたオプションを検出します。 |
メタ文字
メタ文字は特別な意味を持つ文字です:
メタ文字 | 説明 |
---|---|
. | 改行符や行終端記号以外の単一文字を検出します。 |
\w | 単語文字を検出します。 |
\W | 非単語文字を検出します。 |
\d | 数字を検出します。 |
\D | 非数字文字を検出します。 |
\s | 空白文字を検出します。 |
\S | 非空白文字を検出します。 |
\b | 単語の先頭/末尾に一致項を検出します。先頭は例えば\bHI、末尾は例えばHI\bのようになります。 |
\B | 一致項を検出しますが、単語の先頭/末尾に位置していません。 |
\0 | NULL文字を検出します。 |
\n | ラインフィードを検出します。 |
\f | フォームフィードを検出します。 |
\r | リターンを検出します。 |
\t | タブを検出します。 |
\v | 垂直タブを検出します。 |
\xxx | 8進数xxxで定義された文字を検出します。 |
\xdd | 16進数ddで定義された文字を検出します。 |
\udddd | 16進数xxxxで定義されたUnicode文字を検出します。 |
量詞
量詞 | 説明 |
---|---|
n+ | 少なくとも一個のnを含む文字列を一致させます。 |
n* | 零個または複数のnを含む文字列を一致させます。 |
n? | 零個または一個のnを含む文字列を一致させます。 |
n{X} | 指定された文字列nがX個含まれる文字列を一致させます。 |
n{X,Y} | 指定された文字列nがXからY個含まれる文字列を一致させます。 |
n{X,} | 指定された文字列nが少なくともX個含まれる文字列を一致させます。 |
n$ | 指定された文字列nで終わる文字列を一致させます。 |
^n | 指定された文字列nで始まる文字列を一致させます。 |
?=n | 指定された文字列nが直後に続く文字列を一致させます。 |
?!n | 指定された文字列nが直後に続かない文字列を一致させます。 |
RegExpオブジェクトの属性
属性 | 説明 |
---|---|
constructor | RegExpオブジェクトのプロトタイプを生成する関数を返します。 |
global | "g"修飾子が設定されているかを確認します。 |
ignoreCase | "i"修飾子が設定されているかを確認します。 |
lastIndex | 次の一致項のインデックスを指定します。 |
multiline | "m"修飾子が設定されているかを確認します。 |
source | RegExpパターンのテキストを返します。 |
RegExpオブジェクトのメソッド
方法 | 説明 |
---|---|
compile() | バージョン1.5で非推奨です。正規表現をコンパイルします。 |
exec() | テスト文字列内の一致項を検出します。最初の一致項を返します。 |
test() | テスト文字列内の一致項を検出します。trueまたはfalseを返します。 |
toString() | 正規表現の文字列値を返します。 |
RegExp オブジェクトの説明
RegExp オブジェクトは正規表現を表し、文字列に対してパターンマッチを実行する強力なツールです。
文字列リテラル構文
/pattern/attributes
RegExp オブジェクトを作成する構文:
new RegExp(pattern, attributes);
パラメータ
パラメータ pattern 文字列で、正規表現のパターンまたは他の正規表現を指定します。
パラメータ attributes オプションの文字列で、「g」、「i」、「m」の属性が含まれており、それぞれグローバルマッチ、大文字小文字を区別するマッチ、マルチラインマッチを指定します。ECMAScript 标準化前に、m 属性はサポートされていませんでした。 pattern 正規表現であり、文字列でない場合、このパラメータは省略する必要があります。
返値
新しい RegExp オブジェクトが作成され、指定されたパターンとフラグを持っています。パラメータが pattern 正規表現ではなく文字列の場合、RegExp() コンストラクタは指定された RegExp と同じパターンとフラグで新しい RegExp オブジェクトを作成します。
new オペレータを使用しない場合、RegExp() を関数として呼び出すと、new オペレータを使用する場合と同じ動作を行いますが、 pattern 正規表現である場合、それは返されます pattern新しい RegExp オブジェクトは作成されません。
スローされます。
SyntaxError - もし pattern 正規表現が合法でない場合、または attributes 「g」、「i」、「m」以外の文字が含まれている場合、この例外をスローします。
TypeError - もし pattern RegExp オブジェクトですが、省略されていません attributes パラメータが指定されない場合、この例外をスローします。
ブラウザのサポート
/regexp/ は ECMAScript1 (ES1) の機能です。
すべてのブラウザは完全に ES1 (JavaScript 1997) をサポートしています:
Chrome | IE | Edge | Firefox | Safari | Opera |
---|---|---|---|---|---|
Chrome | IE | Edge | Firefox | Safari | Opera |
サポート | サポート | サポート | サポート | サポート | サポート |
正規表現をサポートする String オブジェクトのメソッド
方法 | 説明 |
---|---|
search | 正規表現に一致する値を検索します。 |
match | 一つまたは複数の正規表現の一致を探します。 |
replace | 正規表現に一致するサブ文字列を置き換えます。 |
split | 文字列を文字列配列に分割します。 |
- 前のページ JS Promise
- 次のページ JS Set