トップ > 初級編 > その他 > 正規表現(初級編) >
直前の文字の任意回数の繰り返し

  

直前の文字の任意回数の繰り返しを表す

この記事では、直前の文字の任意回数の繰り返しを表すメタ文字である \{ \}(円マーク・波括弧) について説明します

  
\(円マーク) は日本のみで使われています。
  
\(円マーク) は英語環境での \(バックスラッシュ) のことです。
\{ \}

直前の文字の任意回数の繰り返しとは、言葉の通り、1つ前の文字の繰り返しのことです。 繰り返しの回数は、任意に指定することができます

なお、この記事でも以下のテキストを例に操作を説明します

  1. hello 2014
  2. vi editor
  3. vi editor.

  4. vi editor
  5. vim Editor
  6. Vim Editor
  7. a
  8. aa
  9. aaa
  10. aaaa
  11. aaaaa
  12. .
  13. *
  14. ^
  15. $
  16. /
  17. \
  18. [
  19. ]
  20. <
  21. >
  22. {
  23. }
 
  
3行目の先頭には、空白を1つ入れてあります。
  
4行目は空行です。
  
5行目の先頭には、空白を2つ入れてあります。

直前の文字の任意回数の繰り返しを表す \{ \}(円マーク・波括弧)

正規表現では、\{ \}(円マーク・波括弧) は直前の文字の任意回数の繰り返しを表します

なお、回数指定は、\{ \}(円マーク・波括弧)内に記述しなくてはなりません。 回数指定は、回数を直接指定することも、範囲で指定することもできます。

例えば、

\{5\}

は、5回の繰り返しを表します。 また、

\{3,7\}

は、3回以上で7回以下の繰り返しを表します。

では、実際に \{ \}(円マーク・波括弧) を含めたテキスト検索を実施してみましょう。

文字カーソルは文書の先頭にある
文字カーソルは文書の先頭にある

上図のように文字カーソルは文書の先頭にあると仮定して説明を始めます

ここでは、同じ文字が3回から4回連続するだけの行を検索してみましょう。

では、キーボードから /^.\{3,4\}$<Enter> を入力してください。

/^.\{3,4\}$<Enter>
10行目の aaa の位置へ移動する
10行目の aaa の位置へ移動する

上図のように文字カーソルが10行目の "aaa" の位置に移動します

このように、"a" が3つ連続するだけの行に一致します。

さらに、順方向の次の一致へ移動してみましょう。

キーボードから n を入力してください。

n
11行目の aaaa の行へ移動する
11行目の aaaa の行へ移動する

上図のように文字カーソルが11行目の "aaaa" の位置に移動します

このように、文字の任意回数の連続を探すことができます。

  
  

まとめ

正規表現では、\{ \}(円マーク・波括弧) は直前の文字の任意回数の繰り返しを表します。

正規表現 意味
\{<n>\}
(円マーク・波括弧)
直前の文字の<n>回の繰り返しを表す
\{<n>,<m>\}
(円マーク・波括弧)
直前の文字の<n>回以上<m>回以下の繰り返しを表す
 
メニュー