JavaScript の正規表現で全角スペースを扱う時は Unicode にするといい

2023-10-18
1分で読了
更新: 2025-12-14

目次

例えば、以下のように正規表現で全角スペースを削除するとします。

let text = 'ニュー ジーランド';
text = text.replace(/ /g, '');
// ニュージーランド

これでも問題ありませんが、ESLintを走らせると「Irregular whitespace not allowed 」というエラーが出てしまいます。

したがって、この全角スペースを Unicode の「\u3000」とすればエラーも出なくなりますし、置換も問題なく動きます(ファイルがUTF-8エンコーディングであるのが前提)。

let text = 'ニュー ジーランド';
text = text.replace(/\u3000/g, '');
// ニュージーランド

ちなみに、ここでは正規表現にフォーカスして話しましたが、それ以外の場所でも同様のエラーが出る可能性はありますので、その場合も同じように対処しましょう。

この記事をシェア

この記事を書いた人

Roy Okuwaki

「かたつむりくんのWWW」を運営している Roy Okuwaki(tinybeans)です。bit part 合同会社 代表社員。2007年から、Movable Type や Craft CMS などの CMS、Web 開発、AI ツールの使い方について書いています。

プロフィールを見る →

関連記事