Command Palette

Search for a command to run...

Email Extractor: Pull Every Address Out of Messy Text (メール抽出器: すべてのアドレスを乱雑なテキストからきれいに引き出します)

Email Extractor: Pull Every Address Out of Messy Text (メール抽出器: すべてのアドレスを乱雑なテキストからきれいに引き出します)

T
Toolz Team
|Aug 23, 2026|16 分読んでください

正規表現 コレクションの一部

私にこれを構築させた仕事は転送された電子メールチェーンとして届きました 40 メッセージ深いです クライアントは、グループを適切なメーリングリストに移行できるように、6 か月のスレッドでコピーされたすべてのアドレスがそこに埋め込まれていました To: あんど Cc: 行、署名、引用された返信、時には3 回以上です 手でスクロールしてコピーすると午後がかかるでしょう それでもいくつかを見逃してさらにいくつかを複製します 実際に必要なのは テキストの塊全体を読んで その中のすべてのメールアドレスを見つけ 重複するものを捨てて きれいなリストを渡すものです メール抽出器、そしてこのガイドはそれがどのように機能するか、そしてなぜマッチングの退屈な詳細が重要なのかを説明します。

tl;dr: メール抽出器はテキストのブロックをスキャンし、そこに含まれるすべてのメールアドレスを引き出し、コピーできる重複のないリストを返します Toolzツールはさらに進んで、同じエンジンで同じテキストからURL、電話番号、IPv4 アドレスをキュレーションした正規表現と一致し、重複を大文字と小文字を区別せずに折りたたみ、出力を並べ替えて小文字にすることができます。 すべてがクライアント側で実行されます。アップロードなし、サインアップなし、オフラインで動作します。

私はlaravelとreactでsaas製品をビルドし、私はwordpressプラグインを出荷し、その作業の驚くべき量は、構造化されていないテキストを構造化リストに変換しています サポート受信トレイのエクスポート、スクレイピングされたページ、ログファイル、貼り付けされた文書: それらはすべて、その周りのノイズで必要なデータをミックスします そのノイズからアドレス、リンク、またはIPを引き出すことは、あなたが絶えず行う小さなタスクであり、あなたが半分覚えていて毎回再入力する正規表現でそれを行うことは、ブラウザツールが削除すべき摩擦とまったく同じです だから、これは私が40 メッセージのチェーンが私の膝に着陸した午後を持っていたらいいのにガイドです。

メール抽出器とは何ですか?

メール抽出ツールは、フリーテキストを読み取り、その中のすべてのメールアドレスをリストとして返すツールです。 emailスレッド、webページ、CSVダンプ、チャットログ、ソースコードのページなど、テキストのブロックを貼り付け、ツールは、電子メールの形状を認識するパターンを使用して各アドレスを見つけます: ローカル部分、アットサイン、有効なトップレベルドメインで終わるドメイン テキストを自分で読み取ってアドレスを1 つずつコピーするのではなく、重複を削除して、セット全体を一度に取得します。

ザ ツールツ メール抽出器 は意図的に電子メールよりも多い。同じスキャンエンジンはhttpとhttpsのurl、電話番号、ipv4 アドレスを抽出できる、なぜならそれらは同じクラスの問題だから:テキストの壁にある既知のパターンのあらゆる出現を見つけ、それをきれいにリストアップする、それはそれを単一のトリックツールではなく一般的な抽出ユーティリティにする コアのアイデアは4 つのタイプすべてにわたって一定である。 有効な一致がどのように見えるかについての正確なパターンを定義し、重複しないすべての出現についてテキストをスキャンし、次にクリーン、重複排除し、必要に応じて結果をどこにでも貼り付けることができるリストにソートする。

目玉にしたり、ページ内検索を使用したりしてみてはいかがでしょうか?

どちらの方法も最も重要な方法で失敗するからです テキストを読んだりアドレスを手でコピーしたりするのは遅く さらに悪いことに 信頼性が低いのです 署名ブロックの中に 押し込まれたアドレスを見逃したり 引用された返信から 同じものを2回コピーしたり どれだけのものにするべきだったか 知る由もないのです 入力が大きいほど確率は悪くなり 抽出が必要な入力は 大抵の場合 大きなものになります。

ブラウザーfind-in-pageはこれに良いことはありません すでに知っている文字列の一致を強調表示しますが、抽出の全体のポイントは、事前にアドレスを知らないので、検索するものは何もありません 必要なのは、正規表現が提供する正確な文字に関係なく、電子メールの形状と一致するパターンです その式を正しく書くことはそれ自体の小さなスキルであり、それを少し間違えることは、有効なアドレスを欠いているか、1 つだけに見えるがらくたをキャッチすることを意味します 専用の抽出器は、テストされたパターンを焼き付けるので、再入力する必要がなく、重複排除とペアリングして、コピーしたリストが信頼できるリストであることを理解またはパターン自体を調整したい場合は、 正規表現テスター 独自の式を貼り付けて、サンプル テキストと一致する様子をリアルタイムで確認できます。

メールの照合精度はどれくらいですか?

これは、抽出器が有用か迷惑かを決定する質問ですので、正確である価値があります。 によって定義される電子メールアドレスの形式 RFC 5322、そして完全な文法は有名なバロックである。 、スペースを持つ引用された局所部分、括弧内のコメント、および技術的に有効で、実際のデータに一度も表示されないその他の形式を許可する。 RFC全体と一致させようとする正規表現は巨大であり、実際には、メールサーバーが決して受け入れない文字列と一致し始めるため、良いことよりも害の方が大きい。

Toolz抽出器は業界が落ち着いた実用的なサブセットを使います文字や数字のローカル部分や一般的な句読点やアットサインや少なくとも2 文字のトップレベルドメインで終わる点線ドメインですこれはほとんどのバリデーションライブラリが使っている形と同じですノイズを拒否しながら人々が実際に持っているアドレスと一致します意図的な取引ですメールのように見えてもそうではないフォームの誤検知を避けるために起こらないエキゾチックなフォームのマッチングをあきらめます本物の文書からアドレスを引き出すために仕事全体ですがその取引は正しいものですツールも正直です同じ推論が電話番号にも当てはまり単一のグローバルフォーマットがないのでパターンが意図的に広く、時折電話番号ではない長い番号をキャッチするので電話の結果を見直すのは一瞬の価値があります。

ツールでテキストからメールを抽出するにはどうすればよいですか?

フローには約 10 秒かかります。入力ボックスにテキストを貼り付けるか、「サンプルの読み込み」をクリックして、電子メール、URL、電話番号、IP アドレスがすべて混合された作業例を表示します。

上部のボタンの行を使用して抽出するものを選択します: メールアドレス、URL、電話番号、IPv4 アドレス、または番号 ツールはそのタイプの一致パターンを適用し、他のすべてを無視します 次に、リストのオプションを設定します。 " 重複" を削除して、繰り返しの一致を単一のエントリに折りたたみます。 " をオンにします。 sort" をオンにして、リストをアルファベット順に並べたり、数字を抽出するときに値順に並べたりします。 " をオンにします。 Lowercase" をオンにして、メールとURLを正規化します [email protected] あんど [email protected] は 1 つのアドレスとして扱われます。 pick how the results are joined: new line for a vertical list, comma for a CSV cell or a To: フィールド、スペース、またはセミコロンを期待するメール クライアント用。

Extract をクリックすると、一致するものが何個見つかり、重複がいくつ削除されたかのカウントで結果が表示されます。リストをコピーして、必要な場所に貼り付けます。これがループ全体であり、即座に実行されるため、同じテキスト上の抽出タイプを反転して、何も再貼り付けせずに電子メール、URL、IP をプルすることができます。

何を抽出できますか?また、それぞれをいつ使用しますか?

4 つの抽出タイプは、テキスト内に隠れることが最も多いデータをカバーします。それぞれが一致するものと、その状況が次のとおりです。

タイプ マッチ 通常の使用
メールアドレス [email protected] 実用的な RFC サブセットでは、 スレッドからメーリング リストを構築し、エクスポートから連絡先を取得します
URL http:// あんど https:// リンク、後続の句読点がトリミングされています 監査のためにページまたは文書からすべてのリンクを収集します
電話番号 スペース、ダッシュ、ドット、または括弧を含む 7+ 桁の実行 削られたテキストまたは貼り付けられたテキストから連絡先番号を収集します
IPv4 アドレス 各オクテットが 0-255 に制限された点線の四分音符 ログ ファイルまたは構成ダンプからアドレスを引き出します
数字 符号付き整数と小数、千の区切り文字 レポートまたはテキストとして貼り付けられた表から数値を抽出します

メールとURLのタイプは、私が最も到達するもので、通常は一緒に: メールを抽出して連絡先リストを構築し、次にURLに切り替えて、同じ文書参照のすべてのリンクを監査します。 IPv4 タイプは、サーバーのログを読み、エンドポイントにヒットした一意のアドレスのセットが必要なときにその場所を獲得し、自然に とペアリングします URL パーサー when I then need to break those requests down further. number type is the odd one out but genuely handy for lifting figures out of the report that was pasted as plain text instead of the spreadsheet.数字の種類は、奇数アウトですが、スプレッドシートではなくプレーンテキストとして貼り付けられたレポートから数字を持ち上げるのに本当に便利です。どちらを選択しても、重複除去と並べ替えのオプションは同じように機能するため、出力は常に生の一致ではなく、クリーンで順序付けされたリストになります。

ここでは重複排除が実際にどのように機能しますか?

重複除去は、ケーシングを検討するまで些細なことのように聞こえます。 same person' s アドレスは として表示できます [email protected] 1 つの署名で [email protected] 引用された返信では、文字列を正確に比較する単純な重複排除は両方を維持します。それは間違っています。電子メールのローカル部分は、実用的なメール システムでは大文字と小文字を区別せず、定義上ドメインは大文字と小文字を区別しません。したがって、抽出器は、2 つの一致が同じかどうかを判断するときに電子メールと URL を大文字と小文字を区別せずに比較します。つまり、小文字のオプションをオンにしていない場合でも、これら 2 つのスペルは 1 つのエントリに折りたたまれます。

ツールはまた、それが何をしたかを示します。 結果の上にあるカウントは、合計で何件の一致が見つかったか、およびそれが削除された重複の数の両方を示すため、重複が解消されたためにリストが縮小したのか、入力が思ったよりも小さかったのかを推測することはありません。 数字とIPアドレスの場合、ケーシングが無関係である場合、比較は正確ですこれは、機能すると目に見えず、機能しない場合は腹立たしい種類の詳細であり、そのため、平地に残すのではなく、正しく理解する価値があります Set 生の文字列の。 job が本当に、どの値が散文から引き出すのではなく、あるリストには表示され、別のリストには表示されないかに関するものである場合、 2 つのリストを比較ツール 列に算術を設定し、その特定の質問により適しています。

オンラインで機密テキストから抽出しても安全ですか?

このツールのために、はい、そしてその理由は、信仰を帯びなければならないポリシーではなく、それがどのように構築されているかです 貼り付けたテキストは、JavaScriptを使用して自分のブラウザで完全にスキャンされます アップロードもサーバー往復もなく、ログも保存も何もありません browser' s ネットワークタブを開き、Extract: no requestをクリックすることで確認できます ページが読み込まれるとオフラインになり、ページが機能し続けます。

これは、あなたが貼り付けるテキストは、あなたが漏らしたくないデータを正確に満載することが多いので、ほとんど他の種類のツールよりも抽出のために重要です メールスレッドにはプライベートアドレスが含まれ、ログファイルには内部IPアドレスとホスト名が含まれ、貼り付けられた文書には電話番号と名前が含まれています そのテキストを処理するためにサーバーにアップロードする抽出器は、どんなに善意であっても、あなたのプライベートな対応を他の誰か& #39; sサーバーログに変えます クライアント側の処理は、ルートでのリスクを除去します: テキストはマシンから離れることはありません そのデフォルトは、 Toolz.dev上のすべてのツールを横断して意図的であり、私は完全な引数をレイアウトしました オンラインツール向けデータプライバシーガイド 推論を深く知りたい場合は、これらの小さなユーティリティが作業キットにどのように適合するかをより広く見るために、私の 開発者の生産性向上ツール ガイド 断片を歩き回ります.

知っておく価値のある限界は何ですか?

制限についてまっすぐであることは、ツールを信頼する一環なので、正直なエッジがあります。 電子メールパターンは、完全な文法ではなく、RFC 5322 の実用的なサブセットと一致するため、技術的に有効だがエキゾチックなアドレスに引用されたローカル部分やコメントは見逃されます。これは、誤検知を避けるための意図的な選択であり、本質的には実際のアドレスには影響しませんが、制限であり、存在することを知っておく必要があります。電話番号は、5 つのタイプの中で最も緩いです。ユニバーサル形式がないため; パターンは、共通の区切り文字を使用して 7 桁以上の数字の実行を探します。つまり、電話番号ではない長い識別子をキャッチできる場合があります。そのため、電話の結果を一目見るだけで、2 回かかる価値があります。

エクストラクタは、バイナリファイルではなく、テキストにも動作します. pdfやword文書がある場合は、そのテキストをコピーして、それを貼り付けます; ツールは、ファイル形式自体を読み取ることができません.そして、すべてがブラウザのメモリで実行されるため、真に膨大な入力は、ツールではなくブラウザによって制限されますが、電子メール、リンク、およびipsのために、人々は実際にその天井があなたがヒットするものをはるかに上回っていることを抽出します.これらの制限のいずれも通常の使用で噛むことを知ることは、自信を持ってツールを使用することとエッジケースに驚かされることの間の単なる違いです。

よくある質問

テキストからメールアドレスを抽出するにはどうすればよいですか? にテキストを貼り付けます メール抽出器 そして、タイプセットをメールアドレスにそのままにしておきます.メールパターンでテキストをスキャンし,見つけたすべてのアドレスをリストし,重複を削除し,クリーンリストをコピーできるようにします.サインアップやアップロードは必要なく,読み込まれるとオフラインで動作します.

URLや電話番号も抽出できますか? はい. 抽出タイプを URL、電話番号、IPv4 アドレス、または番号に切り替えます。同じエンジンがタイプごとに異なるパターンを適用するため、1 つのツールが同じテキスト ブロックから複数の抽出ジョブを再ペーストせずに処理します。

重複したメールを削除しますか? はい remove-duplicates オプションがオンの場合 繰り返しマッチングは1 つのエントリに折りたたまれ、ツールは何個の重複が削除されたかを報告します メールとURLは 大文字と小文字を区別せずにマッチングするため、異なる文字ケーシング内の同じアドレスは1 つとして扱われます。

メールの照合精度はどれくらいですか? このパターンは、実際のデータに見られる電子メール アドレスの実用的なサブセット、つまりローカル部分、アット サイン、および有効なトップレベル ドメインで終わる点線ドメインと一致します。完全な RFC 5322 文法は実装されていません。これにより、実際には決して表示されず、電子メールのように見えるだけの文字列に対して偽の一致を生成するエキゾチックな形式が可能になります。

なぜいくつかの電話番号が奇妙に一致するのですか? 電話番号には単一のグローバル形式がないため、パターンはスペース、ダッシュ、ドット、または括弧を挟んだ 7 桁以上の数字の実行を探します。これは意図的に広いため、電話番号ではない長い番号を時々キャッチする可能性があるため、混合テキストから電話番号を抽出するときに結果を確認する価値があります。

抽出されたリストを並べ替えることはできますか? はい。 sort オプションをオンにして、リストをアルファベット順に並べたり、数字を抽出するときに数値順に並べたりします。 remove-duplicates オプションと組み合わせると、クリーンで順序付けされた重複のないリストをコピーできるようになります。

結果をコピーできる形式は? 新しい行、カンマ、スペース、またはセミコロンでマッチに参加できます。垂直リストには新しい行、CSV セルまたは To フィールドにはカンマ、一部のメール クライアントにはセミコロンを選択します。出力の上のカウントには、抽出されたマッチの数が表示されます。

抽出されたデータはどこにでもアップロードされていますか? いいえ、テキストは JavaScript を使用してブラウザでローカルにスキャンされます。何も送信、ログ記録、保存されず、ツールはロードされるとオフラインで動作し続けます。抽出中にネットワーク タブを見て確認できます。

Comments

0 comments

0/2000 characters

No comments yet. Be the first to share your thoughts!