たとえば、以下のような配列があり、currenciesにある単位がある場合に金額だけを抽出する場合の処理。
正規表現で変数を使いたい場合は、new RegExpを使うことが大切。
var currencies = ["¥","円","¥"];
var lines = ["合計 ¥1,230", "小計 1,999円", "総合 ¥1,030", "クレジットカード(Amazon Mastercard)一括払い: ¥ 3,274"];>
for (var i = 0; i < lines.length; i++) {
var line = lines[i];
// ,と-を削除する
line = line.replace(/-|,| | /g, "");
for (var j = 0; j < currencies.length; j++) {
var currency = currencies[j];
// ¥の後に数字がある場合は、¥を削除する
var regexp = new RegExp(currency + "([0-9]+)");
if (line.match(regexp)) {
var matches = line.match(regexp);
console.log(matches[1]);
}
// 円の前に数字がある場合は、数字を抽出する
var regexp = new RegExp("([0-9]+)" + currency);
if (line.match(regexp)) {
var matches = line.match(regexp);
console.log(matches[1]);
}
}
}
株式会社オートプロジェクトでは、中小企業向けのシステム・アプリケーション開発 / 外注サービスを提供しております。
貴社のニーズに応じた柔軟なサポートを行いますので、ぜひお気軽にご相談ください。