コンテンツへスキップ
🛠️ToolsShed

文章スプリッター

テキストを文章、段落、またはカスタム区切り文字で分割します。セグメント数と長さの統計を表示します。

このツールについて

文章分割ツール(Sentence Splitter)は、テキストを論理的なセグメント—文、段落、またはカスタム区切り文字で分解するための実用的なツールです。研究目的のテキスト分析、NLPタスク用のコンテンツ処理、または長い文章の整理が必要な場合、このツールは各セグメントを自動的にカウントし、長さの統計情報を計算して、手動解析の手間を省きます。

テキストを入力フィールドに貼り付け、分割方法(文、段落、またはカスタム区切り文字)を選択して「分割」をクリックするだけです。ツールは即座に各セグメントを番号付きリストで表示し、文字数と単語数も一緒に表示するため、パターン認識、セグメント長の比較、またはさらなる処理用の結果エクスポートが簡単になります。

このツールは、長いドキュメントを編集する執筆者、テキストモデル用の訓練データを準備する開発者、記事構造を管理するコンテンツクリエイター、そして重いワードプロセッサやデータベースツールを開かずに素早いテキスト分析が必要な人にとって非常に価値があります。

よくある質問

コード実装

import re

def split_sentences(text):
    # Split on .!? followed by space+uppercase (basic sentence detection)
    sentences = re.split(r'(?<=[.!?])\s+(?=[A-Z"'])', text.strip())
    return [s.strip() for s in sentences if s.strip()]

def split_paragraphs(text):
    return [p.strip() for p in re.split(r'\n{2,}', text) if p.strip()]

def split_custom(text, delimiter):
    return [p.strip() for p in text.split(delimiter) if p.strip()]

def stats(segments):
    if not segments:
        return {}
    lengths = [len(s) for s in segments]
    return {
        "total": len(segments),
        "avg_length": sum(lengths) // len(lengths),
        "longest": max(lengths),
        "shortest": min(lengths),
    }

text = """Hello world. How are you today? I am doing well!
This is a second group of sentences. They continue here."""

sentences = split_sentences(text)
for i, s in enumerate(sentences, 1):
    print(f"{i}. {s}")
print(stats(sentences))

Comments & Feedback

Comments are powered by Giscus. Sign in with GitHub to leave a comment.