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, '');
// ニュージーランド

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

この記事をシェア

関連記事