English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

JavaScript 正規表現(RegExp) オブジェクト

正規表現は、検索パターンを形成する一連の文字です。

テキスト内でデータを検索する際に、検索する内容を説明するためにこの検索パターンを使用できます。

正規表現は、単一文字でもより複雑なパターンでもできます。

RegExpオブジェクト

正規表現は、文字パターンを表すオブジェクトです。

RegExp 構造関数は、テキストにパターンをマッチするための正規表現オブジェクトを作成します。

Syntax:
new RegExp(pattern, modifiers);

または単純に

/pattern/modifiers;
var regex = /w3codebox/g

例:

  • w3codeboxはパターン(検索に使用)

  • gは修飾子(グローバルマッチを実行)

私たちのJavaScript RegExpチュートリアルで正規表現の詳細については、こちらを参照。

修飾子

修飾子は、グローバル検索、大文字小文字の区別、および多行検索を実行するために使用されます:

修飾子説明
gグローバルマッチを実行、つまり最初のマッチの後で停止せずにすべてのマッチを検索
i大文字小文字を区別しないマッチを実行
m多行マッチを実行

括号

方括号は、一連の文字を検索するために使用されます:

表現説明
[abc]方括号の内のどんな文字でもマッチ
[^abc]括号の外のどんな文字でもマッチ
[0-9]方括号の間のどんな数字でもマッチ
[^0-9]括号の間にないどんな文字(非数字文字)でもマッチ
(x|y)指定されたどんな代替案でもマッチ

メタ文字

メタ文字は、特殊な意味を持たせるために、一文字のアルファベットに続く反斜杠で始まる:

メタ文字説明
.改行シーケンス\n以外のどんな単一文字でもマッチ
\wアルファベットおよび数字 [0-9a-zA-Z]
\W非アルファベットおよび数字
\d数字[0-9]
\D非数字[^0-9]
\sスペース、改行、インデントを含むものをマッチ
\S非スペース、改行、インデントを含まないものをマッチ
\b単語の先頭/終端にマッチ
\B単語の先頭にないものをマッチ/終端のマッチ
\0NUL文字をマッチ
\nラインフィードをマッチ
\fフォームフィードをマッチ
\rリターンをマッチ
\tタブをマッチ
\v垂直タブをマッチ
\xxx八進数xxxで指定された文字をマッチ
\xdd十六進数ddで指定された文字をマッチ
\uxxxx十六進数xxxxで指定されたUnicode文字をマッチ

量詞

方括号の文字シーケンスと単一文字の頻度または位置は特別な文字で表現できます:

量詞説明
z+少なくとも一個を含むどんなものでもマッチz文字列
z*零個または複数を含むどんなものでもマッチz文字列
z?零個または一個を含むどんなものでもマッチz文字列
z{X}X個のzを含むシーケンスの文字列をマッチ
z{X,Y}XからY個のzを含むシーケンスの文字列をマッチ
z{X,}少なくともX個のzを含むシーケンスの文字列を一致させます。
z$で始まる任何文字zの終わりに一致する文字
^zで始まる任何文字zの開始に一致する文字
?=z特定の文字列の後ろに一致するzの任何文字
?!z特定の文字列の後ろにない任何文字zの文字列

正規表現オブジェクト属性

以下の表にRegExpオブジェクトの属性を示します:

属性説明
constructorRegExpオブジェクトのプロトタイプを生成する関数を返します
global「g」修飾子が設定されているかどうかをチェックします
ignoreCase「i」修飾子が設定されているかどうかをチェックします
lastIndex次の一致するインデックスを開始します
multiline「m」修飾子が設定されているかどうかをチェックします
sourceRegExpパターンのテキストを返します

正規表現オブジェクトメソッド

以下の表にRegExpオブジェクトのメソッドを示します:

メソッド説明
exec()文字列パラメータの中で一致する項目を検索します
test()文字列パラメータが一致するかどうかをテストし、布尔値を返します
toString()指定されたオブジェクトを表す文字列を返します