ADVERTISEMENT

【Googleドキュメント】文書全体の太字部分だけ抽出!検索と置換の正規表現活用

【Googleドキュメント】文書全体の太字部分だけ抽出!検索と置換の正規表現活用
🛡️ 超解決

Googleドキュメントで文書全体から太字の部分だけを一気に抽出したいと思ったことはありませんか。通常の検索では一つずつ見つけることはできても、まとめて取得するのは面倒です。この記事では、検索と置換の正規表現機能を活用して、太字部分を効率的に抽出する方法を解説します。ただし、Googleドキュメントの正規表現では書式そのものを検索できないため、ここでは文書内で太字を特定の記号(**)でマークしている場合を想定したテクニックを紹介します。

正規表現を使えば、**で囲まれたテキストパターンを一度に抽出し、別の場所にまとめることが可能です。また、Googleドキュメントの書式検索機能と正規表現を組み合わせた応用も紹介します。これらの方法を身につければ、長文の整理や特定の用語の一覧作成が格段に楽になります。

この記事を読めば、Googleドキュメントの正規表現を使いこなして、文書内から太字部分だけを効率的に抽出できるようになります。具体的な正規表現パターンや操作手順を一つずつ確認していきましょう。

【要点】正規表現で太字部分を抽出する基本的な考え方

  • 正規表現「\*\*(.+?)\*\*」: 文書内で**で囲まれた文字列を検索します。$1で括弧内のテキスト(太字部分)だけを抽出できます。
  • 書式検索機能: 検索と置換ダイアログで「太字」書式を指定すると、正規表現なしでも該当部分を一つずつ確認できます。ただし一括抽出はできません。
  • Apps Scriptの利用: 本格的に太字書式を抽出したい場合は、Apps Scriptを使って太字属性を持つテキストを取得する方法もあります。

ADVERTISEMENT

正規表現で太字を抽出する前に知っておくべきこと

Googleドキュメントの「検索と置換」には正規表現機能が用意されています。しかし、この正規表現はあくまでテキストの文字パターンを検索・置換するためのもので、文字の書式(太字や色など)を直接指定することはできません。そのため、文書内で実際に太字書式が適用されている部分を、正規表現だけで「太字」という条件で抽出するのは不可能です。

ではどうするか。多くの文書では、太字にしたい単語を **単語** のような記号で囲むルールが使われています。これはマークダウン形式と呼ばれるもので、Googleドキュメントでも入力補助として利用できます。このようなルールが事前に決められている文書であれば、正規表現で **で囲まれた部分を抽出することで、事実上太字部分だけを取り出すことができます。

また、既に太字書式が適用されている文書を扱う場合は、別の方法を検討する必要があります。例えば、検索と置換の書式オプションを使って太字部分を一つずつ確認する方法や、Apps Scriptを使って自動抽出する方法があります。この記事ではまず、**パターンを使った正規表現抽出の手順を詳しく解説します。

正規表現で太字(**パターン)を抽出する手順

ここでは、文書内の **太字テキスト** というパターンから、太字テキスト部分だけを抽出して別の場所にまとめる手順を説明します。Googleドキュメントの検索と置換機能を使います。

  1. 検索と置換ダイアログを開く
    メニューから「編集」→「検索と置換」を選択するか、ショートカットキー「Ctrl+H」を押します。
  2. 「正規表現を使用」にチェックを入れる
    ダイアログ下部にある「正規表現を使用」のチェックボックスをオンにします。これで正規表現パターンが使えるようになります。
  3. 検索パターンを入力する
    「検索する文字列」に「\*\*(.+?)\*\*」と入力します。このパターンは「**」で始まり「**」で終わる、最短の文字列をキャプチャします。バックスラッシュはエスケープのために必要です。
  4. 置換パターンで抽出する(応用)
    「置換後の文字列」に「$1」と入力します。$1は先ほどキャプチャした ( ) 内のテキストを表します。この状態で「すべて置換」を実行すると、文書内の **太字テキスト** がすべて 太字テキスト に置き換わります。つまり、**を取り除いて太字部分だけを残すことができます。
  5. 結果を確認する
    置換後、文書は太字部分だけが残り、**は除去されます。もし元の文書を保持したい場合は、事前にコピーを取ってから実行してください。

これで、**でマークされた太字テキストを一括で抽出できます。ただし、この方法は文書全体の**パターンをすべて変換するため、元の形式を失います。抽出結果だけを別のドキュメントに移したい場合は、置換後のテキストをコピーして貼り付けるとよいでしょう。

応用:抽出結果を新しいドキュメントにまとめる

  1. 元の文書を複製する
    元の文書を保持するために、複製を作成します。ファイルメニューから「コピーを作成」を選択します。
  2. 複製上で置換を実行する
    複製したドキュメントに対して、上記の手順で**を除去する置換を実行します。
  3. 抽出結果を新しい文書にコピーする
    置換後の文書全体(もともと**で囲まれていたテキストだけが残っている)を選択し、新しいGoogleドキュメントに貼り付けます。これで太字部分だけの一覧が完成します。

注意点とよくある失敗

書式の太字を正規表現で直接抽出できない

Googleドキュメントの正規表現はテキストパターンのみに対応しており、太字や斜体などの書式を条件に含めることはできません。もし文書内で書式としての太字(実際に太字に設定された文字)を抽出したい場合は、この記事で紹介した**パターンによる方法は使えません。その場合は、書式検索機能(検索と置換で「書式」ボタン→「太字」を選択)を使って一つずつ確認するか、Apps Scriptを利用する必要があります。

パターンが文書のルールと合わないと抽出できない

この方法は、文書内で太字部分が **テキスト** というルールで書かれていることを前提としています。もし __テキスト__ のように別の記号を使っている場合や、記号なしで直接太字書式を適用している場合はパターンを変更する必要があります。また、**が入れ子になっていたり、1行内に複数ある場合も正規表現のパターン次第でうまく抽出できます。例えば (.+?) の代わりに (.+) を使うと、最長一致となり意図しない結果になることがあるので注意してください。

置換時に元の文書が変更されるリスク

「すべて置換」を実行すると、文書内の**で囲まれた部分がすべて置き換えられます。この操作は元に戻せませんので、必ず事前に文書のバックアップを取るか、コピーを作成してから行ってください。特に、**記号が別の意味で使われている場合(例えば強調以外の目的)には、誤変換が発生する恐れがあります。

ADVERTISEMENT

正規表現抽出と書式検索の比較

項目 正規表現(**パターン) 書式検索(太字)
抽出可能な条件 特定の記号で囲まれたテキスト 太字書式が適用されたテキスト(書式条件)
一括抽出の可否 可能(置換で一括変換後コピー) 不可(一つずつしか見つけられない)
文書の事前準備 必要(太字部分を**で書いておく) 不要(既存の太字書式をそのまま利用)
応用の柔軟性 高い(正規表現でさまざまなパターンに対応) 低い(書式条件のみ)
正規表現のスキル 必要(パターン理解が必要) 不要(ボタン操作のみ)

さらなる応用編:Apps Scriptで太字書式を抽出する

もし文書内で既に太字書式が適用されており、正規表現のパターンに頼らずに抽出したい場合は、Google Apps Scriptを利用する方法があります。スプレッドシートのスクリプトエディタで以下のようなコードを実行することで、文書内の太字部分をリストアップできます。

function extractBoldText() {
  var doc = DocumentApp.getActiveDocument();
  var body = doc.getBody();
  var text = body.getText();
  var result = [];
  // 簡易的な方法:太字の範囲を取得するには段落やテキストの属性を調べる必要がある
  // 詳細な実装は省略しますが、getTextAttributeIndices()などを使用します
  Logger.log("Apps Scriptを使うと書式を直接取得できます。");
}

ただし、Apps Scriptの詳細はこの記事の範囲を超えるため、ここでは参考までに紹介します。Googleの公式ドキュメントを参照して、実際のスクリプトを作成してみてください。

まとめ

Googleドキュメントで文書全体から太字部分だけを抽出するには、正規表現と検索と置換の組み合わせが効果的です。ただし、正規表現では書式そのものを検索できないため、文書内で太字を ** のような記号でマークしている場合に限ります。この記事で紹介した「\*\*(.+?)\*\*」のパターンと置換文字列「$1」を使えば、一気に太字テキストだけを取り出せます。また、書式検索機能やApps Scriptを使う方法もあることを理解しておくと、状況に応じた最適な手法を選べます。ぜひ自分の文書のルールに合わせて正規表現をカスタマイズし、効率的な文書整理に役立ててください。


ADVERTISEMENT

📄
Googleドキュメントトラブル完全解決データベースこの記事以外にも、書式・共有・Apps Script・引用など様々な困りごとへの解決策をまとめています。逆引きに活用してください。
この記事の監修者
✍️

超解決 第一編集部

疑問解決ポータル「超解決」の編集チーム。正確な検証と、現場視点での伝わりやすい解説を心がけています。