前提・実現したいこと
GASにてGmailのメール本文から特定文字以降を抽出し、スプレッドシートに羅列させていくものを作りたいです。
しかし、1つのメール内に特定文字が複数存在するため、一番上に記載されている物しかスプレッドシートに反映しません。
どのようにすれば良いか教えていただけませんでしょうか。
GASをつい最近学び始めたため、初心者の質問で申し訳ありません。
詳しくは下記の通りです。
【メール本文】
案件名:●●
業種:建設
地域:関東
案件名:▲▲
業種:不動産
地域:東海
このようなメールが複数あり、1つのメール内には10件ほど記載されています。
コードは下記の通りで、メール内一番上に記載されているの案件名、業種、地域しか拾ってくれず、2つ目以降に記載されている案件名、業種、地域は抽出されず、次のメールを見に行ってしまします。
初心者で申し訳ありませんがどなたかアドバイスいただければ幸いです。
よろしくお願いいたします。
該当のソースコード
function myFunction(){
var mailQuery = 'from:●●●●@gmail.com after:2021/06/01';
var threads = GmailApp.search(mailQuery);
var messages = GmailApp.getMessagesForThreads(threads);
var sheet = SpreadsheetApp.getActiveSheet();
for(var i=0; i<messages.length; i++){
var plainBody = messages[i][0].getPlainBody();
sheet.appendRow([plainBody.match(/案件名./)[0].replace('案件名', ''), plainBody.match(/業種./)[0].replace('業種', ''), plainBody.match(/地域.*/)[0].replace('地域', ''),])
}
}
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/06/11 05:46
2021/06/11 10:15
2021/06/12 06:05