この記事は公開から3年以上経過しています。
JavaScript/TypeScriptとNode.jsを使った開発で、.NETのEnvironment.ExpandEnvironmentVariables()
のように、文字列中の環境変数を展開する方法。
方法
npmのパッケージを使う方法もありますが、以下のような正規表現による置換でも実現できます。
var envExpandedText = inputText.replace(/%([^%]+)%/g, (m, p1) => process.env[p1]??'');
上記正規表現で行う内容は
- 正規表現を使い
%
で囲まれた環境変数名を取得。 - 1.で取得した環境変数名をキーに
process.env
から環境変数の値を取得。 - 1.の正規表現で一致した単語部分を2.で取得した環境変数の値に置換(見つからない場合は空文字)。
となります。
参考ウェブサイトなど
- Node.js
process.env
以上です。