9ml

正規表現

body.match(/[0-9]+円/);

[0-9] は0から9までの数字のいずれか1文字

+ は直前の要素が1回以上繰り返されることを意味します

body.match(/決済日時([\s\S]*?)詳細を確認する/);

\s は空白文字(スペース、タブ、改行)

\Sは非空白文字(空白文字以外の任意の文字)

[\s\S]で改行を含む全ての文字を意味します

* は直前の要素が0回以上繰り返されることを意味します

? は最短文字を意味します(たとえば、決済日時がメールに複数含まれていた場合、*だけだと長文を取得してしまいますが、*?とすることで最短文章を取得できます)

paymentdate.replace(/決済日時|詳細を確認する/g, '').trim();

| はorを意味します

g はGlobal(全体)を意味します。テキストに複数回「決済日時」や「詳細を確認する」が含まれていた場合、それら全てを置き換えることができます。

trim()で空白文字を削除します

ホームに戻る