Movatterモバイル変換


[0]ホーム

URL:


MDN Web Docs

このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。

SyntaxError: invalid regular expression flag "x"

JavaScript の例外 "invalid regular expression flag" は、正規表現リテラルにおいて 2 番目のスラッシュの後に定義されたフラグが、g,i,m,s,u,y のどれでもないときに発生します。

エラーメッセージ

js
SyntaxError: Syntax error in regular expression (Edge)SyntaxError: invalid regular expression flag "x" (Firefox)SyntaxError: Invalid regular expression flags (Chrome)

エラーの種類

エラーの原因

コード内に、不正な正規表現フラグがあります。スラッシュで囲まれたパターンで構成される正規表現リテラルでは、フラグは 2 番目のフラグの後に定義されます。RegExp オブジェクトのコンストラクター関数 (2 つ目の引数) で定義することもできます。正規表現フラグは個別に使うこともできれば、好きな順序で複数使うこともできますが、 ECMAScript では 6 つしかありません。

正規表現にフラグを含めるには、次の構文を使用します。

js
var re = /pattern/flags;

または、

js
var re = new RegExp("pattern", "flags");
フラグ説明
gグローバル検索
i大文字小文字を区別した検索
m複数行検索
s. で改行文字に一致できるようにする (ECMAScript 2018 で追加)
uUnicode。パターンを Unicode コードポイントの並びとして扱う。
y対象の文字列の現在の位置から一致を探す "sticky" 検索。sticky を見てください。

有効な正規表現フラグは 6 つしかありません。

js
/foo/bar;// SyntaxError: invalid regular expression flag "b"

正規表現を生成するつもりでなくても、 2 つのスラッシュを含む式は正規表現リテラルとして解釈されます。

js
let obj = {  url: /docs/Web};// SyntaxError: invalid regular expression flag "W"

文字列を生成する場合、文字列リテラルを生成するためには単一引用符、または二重引用符を追加します。

js
let obj = {  url: "/docs/Web",};

有効な正規表現フラグ

JavaScript で使用できる 6 つの正規表現フラグについては、上述の表を見てください。

js
/foo/g;/foo/gims;/foo/uy;

関連情報

Help improve MDN

Learn how to contribute.

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2025 Movatter.jp