ForHosting KIT · 文章作成・要約AI

テキストから@メンションを抽出

文章を貼り付けると、@メンションを最初に出てきた順に1回ずつ取り出します。@Ada、@Linus、@ADAを含むメモなら@Adaと@Linusが返り、team@example.comは対象外です。ブラウザで無料で使えます。

  • 無料
  • ブラウザで動作
  • 登録不要
  • データは端末の外に出ません
ご利用方法 ウェブAPIメールTelegramアプリ 近日

独自の解析処理を実装せずに、メッセージ、コメント、文書、エクスポートした会話から@メンションを抽出できます。プレーンテキストを走査し、有効なメンションを一度だけ返して、最初に現れた表記と順序を保持します。大文字と小文字を区別せずに重複を判定するため、@Alexと@ALEXは1件になります。Unicodeの文字と数字を含む名前に対応し、メールアドレスのドメインは除外します。一致するトークンがない場合は、空のメンション一覧を返します。

会話文を信頼できるメンション一覧に変換します

SNS投稿、プロジェクトメモ、サポート記録、コミュニティのエクスポートには、通常の文章とユーザー名が混在しています。手作業で名前を転記すると時間がかかり、単純にアットマークを検索すると、メールアドレスや不正な断片まで拾うおそれがあります。この抽出機能は左から右へ決定的に走査し、次の処理ですぐ使える整理済みの配列を返します。

トークンは@で始まり、Unicodeの文字、数字、アンダースコアが続きます。アットマークの直前は、名前を構成する文字や別のアットマークではなく、実際の境界でなければなりません。そのため「@Mina_7に確認してください」は1件になりますが、「team@example.com」のドメイン部分はユーザーとして扱いません。

後ろの句読点はトークンの終端になります。結果は元の出現順を保ち、一致がなければエラーや仮の値ではなく空の一覧を返します。

大文字と小文字を区別しない重複排除の仕組み

複数のシステムから文章を集めると、同じ人物が異なる大文字・小文字の表記で何度も記載されることがあります。本機能は表記差を無視して比較するため、@River、@RIVER、@riverは1件のメンションになります。ただし、すべてを小文字に変換するのではなく、最初に見つかった表記をそのまま保持します。

これにより、後続処理には重複のない一覧を渡しつつ、画面には元の表記を表示できます。初出順も変わらず、後の重複によって項目が移動することはありません。比較対象は先頭のアットマークを含むトークン全体で、数字とアンダースコアにも意味があります。

ネットワークや確率モデルは使用せず、構文だけを認識します。アカウントの存在確認、プロフィール参照、別表記の人物同定は行いません。

自動処理では明確なトークン規則をご利用ください

予測可能な連携のため、公開されている上限以内のテキスト文字列を持つオブジェクトを送信してください。空文字列は有効で、空の一覧を返します。Unicodeの文字と数字に対応しています。

空白、句読点、ハイフン、および文字・数字・アンダースコア以外の記号で抽出を終了します。また、文字、数字、アンダースコア、別のアットマークの直後からは開始しません。この境界規則により、メールアドレスや二重記号による誤検出を防ぎます。

返された配列は、振り分け、モデレーション、通知準備、分析、索引作成などにご利用いただけます。存在確認が必要な場合は対象プラットフォームで別途検証してください。純粋で決定的な実装のため、同じ入力からは常に同じ結果が得られます。

コミュニティ投稿の担当振り分け

投稿を担当者やチームへ割り当てる前に、言及された一意なユーザー名を抽出できます。

エクスポートした会話の整理

メールアドレスのドメインを含めず、チャット記録から初出順の一覧を作成できます。

分析用メンションの索引作成

自由記述のコメントを、集計、絞り込み、プラットフォームデータとの結合に適した安定した配列へ変換できます。

メンションにはどの文字を使用できますか?

@の後にはUnicodeの文字、数字、アンダースコアを使用できます。それ以外の文字でトークンは終了します。

重複するメンションはどのように処理されますか?

大文字と小文字を区別せずに比較し、最初の表記と初出順を保持します。

メールアドレスの一部も抽出されますか?

いいえ。 文字、数字、アンダースコア、別のアットマークの直後からメンションを開始しないため、通常のドメインは除外されます。

ユーザー名が実在するか確認しますか?

いいえ。 メンション形式のトークンだけを抽出し、SNSやアカウント名簿には接続しません。

メンションが1つもない文章ではどうなりますか?

エラーにはならず、空の一覧が返ります。空の文章を入れた場合も同じです。そのため、文章にメンションが含まれていないだけなのか、入力そのものに問題があるのかを区別できます。

このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。

POSThttps://api.kit.forhosting.com/text/extract-mentions

Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。

curl -X POST https://api.kit.forhosting.com/text/extract-mentions \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"Thanks @Ada and @Linus for reviewing this with @ADA."}'
{
  "text": "Thanks @Ada and @Linus for reviewing this with @ADA."
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "text.extract_mentions",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。

1リクエストあたり$0.002

単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。

max_text_chars100000
HTTPコード意味
401unauthorizedAPIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。
402insufficient_balance残高が不足しています。チャージ後に再度お試しください。
404unknown_type指定されたタスクタイプは存在しません。タイプ名を確認してください。
429rate_limitedリクエストが多すぎます。しばらく待ってから再度お試しください。

大文字と小文字を区別しない重複排除の仕組み

したがって、@sam、@sam_2、@sam2は別々の3件です。

自動処理では明確なトークン規則をご利用ください

フィールドの欠落、文字列以外の値、長すぎる入力はinvalid_inputエラーになるため、不正なリクエストとメンションのない文章を区別できます。API実行は1リクエストあたり$0.002です。

メンションがない場合はどうなりますか?

正常に処理され、空のメンション一覧が返されます。

KITの完全なドキュメントを見る →