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, ''); // ニュージーランド
ちなみに、ここでは正規表現にフォーカスして話しましたが、それ以外の場所でも同様のエラーが出る可能性はありますので、その場合も同じように対処しましょう。