"Unterminated character class. Run CLI with --verbose flag for more details."
ゼロ環境でExpoを導入しようとしたのでnode入れろとかC++入れろとか挙句の果てにはexpoの最新版だとインストール出来ないって怒られやっとインストール出来て起動出来ると思ったらよくわからないエラーに遭遇したので書き留めて置きます。
環境
expo 3.5.0
node.js LTS版(12.13.1)
原因と解決策
nodeの12.10前後のバージョンが悪さをしてるみたいなのでダウングレードもしくは修正済のバージョンにアップグレードするのが安定しそうでしたが自分は入れ直したりアップグレードする手間が惜しかったでエラー箇所を修正しました。エラーと修復手順を見る感じだと文法の記述ミスなのかな。
エラー箇所の修復手順
手順1 原因のファイルを開きます
"Expoのプロジェクトを作成したフォルダ"\node_modules\metro-config\src\defaults\blacklist.js
手順2 エラー原因箇所を修正して保存します
var sharedBlacklist = [
/node_modules[\/\]react[\/\]dist[\/\]./,
/website\/node_modules\/./,
/heapCapture\/bundle.js/,
/.\/tests\/./
手順3 Power Shellでプロジェクト起動"expo start"
参考資料
https://github.com/facebook/metro/issues/453#issue-comment-box