(license)みなさん、こんにちは!タカハシ(@ntakahashi0505)です。Scriptでフォーム送信メールからデータを抽出してスプレッドシートに登録するツールを作成しております。前回の記事はコチラです。Scriptを使ってGmailで届いたフォーム送信情報をスプレッドシートに蓄積する方法の初回。正規表現とは何か、またGASで正規表現により文字列を抽出する最も簡単なスクリプトを紹介します。tonari-it.com2017.11.07正規表現というテクニックを使って文字列からデータを抽出する方法をお伝えしました。「名前:鈴木」「年齢:30才」という文字列のパターンを拾うことができましたが、本当に欲しいのは「鈴木」だったり、「30」だったりするわけですね。正規表現で文字列を抽出した場合は、いらない部分をザクザク削る処理が必要になるのが一般的です。いうことで、今回はGASで正規表現で抽出した文字列から、欲しいデータのみを取り出す方法をお伝えします。前回のおさらいでは、まず前回のおさらいから。作成したスクリプトはコチラ。'高橋様\nお世話になっております。\n\n名前:鈴木\n年齢:30才\n\n以上です。'高橋様\nお世話になっております。\n\n名前:鈴木\n年齢:30才\n\n以上です。「年齢:」ではじまって「才」で終わる文字列のパターン、つまり「年齢:30才」を抽出することができます。今回は、ここから「鈴木」または「30」だけを残して不要な部分を削っていく処理を作っていきたいと思います。正規表現でマッチした文字列の不要な部分を削除するreplaceメソッドで部分文字列を削除する文字列の一部び削除はreplaceメソッドを使って実現することができます。本来、replaceメソッドは文字列の部分文字列を置換するメソッドで以下のように書きます。置換文字列)この置換文字列を空文字(”)とすることで、部分文字列の削除と同様の処理となるというわけです。'高橋様\nお世話になっております。\n\n名前:鈴木\n年齢:30才\n\n以上です。'高橋様\nお世話になっております。\n\n名前:鈴木\n年齢:30才\n\n以上です。''));}となります。matchメソッドの後の部分で「[0]」としているのは、配列から最初の要素を取り出すためです。matchメソッドの戻り値は、パターンにマッチした文字列の配列ですからね。...ちょいと冗長ですよね。同じような処理が続いちゃっているので、整理していきましょう。正規表現による抽出とデータの取り出しをする関数newによる正規表現の生成その事前準備として、正規表現の生成方法として、正規表現リテラルとは別の方法をお伝えしておきます。JavaScriptで正規表現はRegExpオブジェクトというオブジェクトですので、newキーワードで生成をすることができます。フラグ)引数の正規表現は文字列で指定できますので、変数を使うことができます。フラグは前回の記事でお伝えしたものと同じです。パターンマッチを抽出し必要なデータを取り出す関数それを踏まえて、文字列strから最初の文字列preではじまり、最後の文字列sufで終わるというパターンマッチを抽出し、さらに必要なデータのみを取り出す関数を作りました。以下の関数fetchDataです。data;}この関数を使えば、先ほどのスクリプトは、以下のようにスッキリ書き換えることができます。'高橋様\nお世話になっております。\n\n名前:鈴木\n年齢:30才\n\n以上です。'高橋様\nお世話になっております。\n\n名前:鈴木\n年齢:30才\n\n以上です。Scriptで正規表現でマッチした文字列から不要な部分を削除する方法についてお伝えしました。replaceメソッドで文字列の部分文字列を削除するnewキーワードによる正規表現の生成ちょいと地味な内容ですが、けっこう便利ですよ...!では、次回は実際にGmailのメッセージからデータを抽出していきますね。Scriptでフォーム送信メールからデータを抽出してスプレッドシートに登録するツールを作成しています。今回はGmailに届いたメールから正規表現でデータを抽出するスクリプトを紹介します。ScriptでメールやHTMLドキュメントからデータを抽出することができます。本シリーズでは、フォーム送信の通知メールからデータを抽出してスプレッドシートに追加するツールの作成を目指します。プランノーツ代表、コミュニティ「ノンプロ研」主宰。ITで日本の『働く』の価値を上げる!」をテーマに、VBA&GASの開発、講師、執筆などをしております。→詳しいプロフィールはコチラ★ご依頼・ご相談はお気軽にどうぞ!→お問い合わせはコチラ★フォロー頂ければ嬉しいです。「コミュニティ+講座」形式で継続性&教え合える環境も提供。!ノンプログラマーがプログラミングスキルを身に着ける支援ををするコミュニティ。セミナー・もくもく会・Facebookグループのサポートで「自らで学び続ける力をつける」支援、「教え合うことで学びの価値を上げる」場の提供をしています。Scriptでファイル添付付きのメールを送信する方法をお伝えします。定期的なレポートの自動送付など活用できる場面の多いテクニックですので、覚えておいて損はないはずです。Scriptのクラス」をテーマにシリーズ連載をお送りしております。今回は、GASでスプレッドシートの表をインスタンス配列化する方法をおお送りします。ScriptGASでGoogleスライドのSlideオブジェクトの概要とその取得方法GASでGoogleスライドのプレゼンテーションを楽々作成するテクニックについてシリーズでお伝えしています。今回は、GASでGoogleスライドのSlideオブジェクトの概要とその取得方法です。Scriptでクラスを作るシリーズをお送りしています。今回は、GASでクラスのプライベートプロパティを取得するメソッドを作成する方法についてお伝えします。ScriptGASでGoogleフォームにラジオボタンの質問を追加する方法GASでGoogleフォームによるイベント申し込みフォームを作成する方法についてお伝えしています。今回は、フォームにMultipleChoiceItemオブジェクト...つまり。ラジオボタンの質問を追加する方法です。Scriptでフォーム送信メールからデータを取得してスプレッドシートに登録していくツールを作成しています。今回は、配列の中に特定の値が含まれているか判定をするsomeメソッドの使い方です。PMこれは一番求めていた機能です。ありがとうございました。AM川田様コメントありがとうございます!お役に立てて良かったです。「コミュニティ+講座」形式で継続性&教え合える環境も提供。詳細・お申込はこちら隣ITを応援する当ブログを「応援したい!」「役に立ったよ!」というお気持ちを、コチラからお支払いただくことができます。日々更新の活力倍増いたします。※PayPalアカウントが必要です。※金額は変更可能です。Platform23HTML・CSS32iPhone・アプリ29Monaca・スマホアプリ開発7PC全般・Windows86PowerPoint・VBA28Python87RPA1VBScript15Vue.js・JavaScript13WEBサービス・クラウド68WordPress・ブログ88Word・VBA42コミュニティ・イベント109セミナーのお知らせ11チャットワーク72データ分析・アクセス解析40仕事・生産性・働き方73動画配信8商業出版21起業・フリーランス72電子書籍・Kindle3運営会社プランノーツは"IT×働き方改革"をお手伝いする会社です。「コミュニティ+講座」形式で継続性&教え合える環境も提供。詳細・お申込はこちら隣ITを応援する当ブログを「応援したい!」「役に立ったよ!」というお気持ちを、コチラからお支払いただくことができます。日々更新の活力倍増いたします。※PayPalアカウントが必要です。※金額は変更可能です。Platform23HTML・CSS32iPhone・アプリ29Monaca・スマホアプリ開発7PC全般・Windows86PowerPoint・VBA28Python87RPA1VBScript15Vue.js・JavaScript13WEBサービス・クラウド68WordPress・ブログ88Word・VBA42コミュニティ・イベント109セミナーのお知らせ11チャットワーク72データ分析・アクセス解析40仕事・生産性・働き方73動画配信8商業出版21起業・フリーランス72電子書籍・Kindle3運営会社プランノーツは"IT×働き方改革"をお手伝いする会社です。Scriptが「V8ランタイム」をサポート!モダンなECMAScript構文が使えるようになった2020.02.072020.02.08GASでコピーしたGoogleスライドのプレゼンテーションを取得する方法2020.02.052020.02.05Facebookページいつも隣にitのお仕事タイトルとURLをコピーしました。