Home > コンピュータ > LibreOffice

LibreOfficeで使える正規表現のメタキャラクタ

新規作成日 2017-03-30
最終更新日

正規表現パターンで利用できるメタキャラクタと動作は、正規表現を実行する処理系ごとに多少の違いがあります。正規表現パターンで一致する文字列が意図しないとき、利用する処理系で利用できるメタキャラクタを確認しましょう。

このページの内容は、LibreOfficeの公式ドキュメントにある「List of Regular Expressions」の翻訳です。和訳版「正規表現のリスト」も存在します。

2024-09-23に原文「List of Regular Expressions」を確認しました。以降に更新されている可能性があるので必要に応じて原文のリンクを確認してください。リンク先のURLは、変更されることがあります。

原文は、Mozilla Public License Version 2.0で公開されています。

このページの翻訳は、このサイトの管理者に許可を求めることなく利用して頂いて構いません。

LIbreOfficeで使える正規表現のメタキャラクタ
記号 結果/用途
何らかの文字 特に指定がない限り、指定された文字を表します。
. 改行や段落区切りを除く、何らかの1 文字を表します。たとえば、検索語、"sh.rt"は、"shirt"と"short"の両方を返します。
^ 検索語が、段落の先頭にある場合にのみ、検索語を検索します。段落の先頭にある空のフィールドや文字固定枠のような特別なオブジェクトは、無視されます。例:"^Peter".
$

検索語が段落の末尾にある場合だけ、検索語を検索します。空のフィールドや文字に固定されたフレームのような、段落の末尾にある特別なオブジェクトは、無視されます。例:"Peter$"。

$自体は、段落の末尾と一致します。この方法は、段落区切りを検索し置換できます。

* "*"の前にある 0 個以上の文字を検索します。たとえば、"Ab*c"は、"Ac"、"Abc"、"Abbc"、"Abbbc"などを検索します。
+ "+"の前にある1つ以上の文字を探します。たとえば、"AX.+4"は、"AX4"でなく、"AXx4"を見つけます。常に、段落内でこの検索パターンに一致する可能な限り長い文字列が、検索されます。段落が、"AX 4 AX4"という文字列を含んでいる場合、全体に渡って、強調表示されます。
? "?"の直前にある0または1つの文字を検索します。たとえば、"Texts?"は、"Text"と"Texts"を見つけ、そして、"x(ab|c)?y"は、"xy"、"xaby"、"xcy"を検索します。
\ 検索は、"\"に続く特殊文字を、(\n、\t、\>、\<の組合せを除いて)正規表現としてでなく、通常の文字として解釈します。たとえば、"tree\."は、"treed"や"trees"ではなく、"tree."を検索します。
\n [Shift]+[Enter]キーの組み合わせによって、挿入された改行を表します。改行を段落区切りに変更するために、検索と置換ボックスに、\nと入力し、続いて、検索と置換を実行します。改行を表す検索テキスト・ボックス内の\nは、[Shift]+[Enter]キーの組合せで挿入されました。段落区切りを表す置換テキスト・ボックス内の\nは、[Enter]や[Return]キーで入力できます。
\t タブを表します。あなたは、置換ボックスでも、この式を使用できます。
\b 単語の境界と一致します。たとえば、"\bbook"は、"checkbook"ではなく、"bookmark"を検索しますが、"book\b"は、"bookmark"ではなく、"checkbook"を検索します。個別の単語"book"は、両方の検索語で見つかります。
^$ 空の段落を見つけます。
^. 段落の最初の文字を検索します。
&や$0 あなたが、置換をするとき、検索ボックス内の検索条件によって検索した文字列を、置換ボックスの語に追加します。たとえば、あなたが、検索ボックス内に"window"と入力し、置換ボックス内に"&frame"と入力する場合、"window"という単語は、"windowframe"に置き換えられます。あなたは、検索条件で見つかった文字列の属性や形式を変更するために、置換ボックス内に"&"も入力できます。
[abc123] 括弧の間にある文字の1つを表します。
[a-e] 開始文字と終了文字の両方を含む、aからeまでの文字のいずれかを表します。文字は、コード番号順に並べられています。
[a-eh-x] a-e から h-x までのいずれか文字を表します。
[^a-s] a と s の間にないすべてを表します。
\uXXXX \UXXXXXXXX 桁16進のUnicodeコード(XXXX)に基づいた文字を表します。わかりにくい文字の場合、大文字の U と 8 桁の 16 進数 (XXXXXXXX) を持つ別のバリエーションもあります。特定の記号フォントの場合、特殊文字のコードは、使用されるフォントによって異なる場合があります。あなたは、[挿入] - [特殊文字]を選択することによって、コードを表示できます。
| "|"の前にある語を検索し、加えて、"|"の後にある語を検索します。たとえば、"this|that"は、"this"と"that"を見つけます。
{2} 開き括弧の前の文字が、出現する回数を定義します。たとえば、"tre{2}"は、"tree"を検索し、選択します。
{1,2} 開き括弧の前の文字が、出現できる最小回数と最大回数を定義します。たとえば、"tre{1,2}"は、"tre"と"tree"を検索し、選択します。
{1,} 開き括弧の前の文字が、出現できる最小回数を定義します。たとえば、"tre{2,}"は、"tree"、"treee"、"treeeee"を検索します。
( ) 検索ボックスで:括弧内の文字を、参照として定義します。あなたは、続いて、"\1"で、現在の式の最初の参照を参照し、"\2"で、2つ目の参照を参照するなどができます。たとえば、あなたのテキストが、数値 13487889 を含んでおり、正規表現 (8)7\1\1 を使用して検索する場合、"8788"が見つかります。あなたは、語をグループ化するために、()も使用できます。たとえば、"a(bc)?d"は、"ad"あるいは"abcd"を検索します。置換ボックスで:参照を置換するために、\ (バックスラッシュ) の代わりに $ (ドル) を使用します。見つかった文字列全体を置き換えるために、$0を使用します。
[:alpha:] 英字を表します。1つ以上の文字を検索するために、[:alpha:]+ を使用します。
[:digit:] 数字を表します。1つ以上の数字を検索するために、[:digit:]+を使用します。
[:alnum:] 英数字([:alpha:]と[:digit:])を表します。
[:space:] スペース文字を表します (他の空白文字は表しません)。
[:print:] 印刷できる文字を表します。
[:cntrl:] 印刷されない文字を表します。
[:lower:] オプションで[大文字と小文字を区別する] (Match case) が選択されている場合は、小文字を表します。
[:upper:] オプションで[大文字と小文字を区別する] (Match case) が選択されている場合は、大文字を表します。

Examples

e([:digit:])? - 'e' の後に 0 または 1 桁の数字が続くものを検索します。現在、[:digit:] のような名前付き文字クラスは、すべて括弧で囲む必要があることに注意してください。

^([:digit:])$ - 1つの数字だけが含まれる行、あるいは、セルを検索します。

あなたは、検索語を組み合わせて、複雑な検索を作成できます。

段落内で3桁の数字だけを検索する

To find three-digit numbers alone in a paragraph

^[:digit:]{3}$

^は、一致が段落の先頭にある必要があることを意味します。

[:digit:]は、何らかの10進数に一致します。

{3}は、[数字]が、3つだけ存在することを示しています。

$は、一致が、段落の末尾にあることを示しています。

関連したトピック

Related Topics

このエントリーをはてなブックマークに追加