html Javascript プログラミング

不定形のテキストから値段だけを取り出して合計する

商品と値段のメモから合計金額を出したい

ちょっと不要品を処分しようと思いまして、買い取り屋さんで買い取り価格を検索し、その結果をテキストでメモしていきました。

こういうときに昔作ったツールが便利です。

最終的に商品名とか説明と値段が混じった不定形なテキストができあがりました。

合計の買い取り価格を計算するのに手入力というのもしんどいので、価格情報を抜き出して合計するツールを作りました。

テキストから値段だけを抽出する正規表現

値段の抽出に使った正規表現は以下のようなものです。

/[\d,]+円/g

たまたま、フォーマットは"0,000円"というカンマ区切りで終わりが感じの円で統一されてたので、割とシンプルにできました。

本当は数字がちゃんと3ケタで区切られているかどうかもちぇっくすべきですが、個人のツールとしてはこれで十分でしょう。

多様な値段表記に対応するにはもっと複雑な正規表現を書くか、複数ステップで抽出する必要がありますね。

配列の合計を計算する

配列の要素を合計するにはreduceメソッドを使いました。

let total = price.reduce((sum, v) => sum + v, 0);
//最後のゼロは初期値。合計にプラスされる。

とりあえず、割と便利だったのでCodePenに残しておこうと思います。

See the Pen pick up prices(Yen) by Ryoji Kimura (@ryjkmr) on CodePen.

-html, Javascript, プログラミング