「正規表現」の版間の差分
削除された内容 追加された内容
M ln タグ: 2017年版ソースエディター |
コマンドラインツール・プレーンテキストエディタ追加 タグ: 2017年版ソースエディター |
||
1 行
<small>{{Pathnav|工学|情報技術|プログラミング}}</small>
{{Wikipedia}}
正規表現
正規表現を使うと、テキスト・データ・レコード内の特定のパターンにマッチする文字列を探し出して修正することができ、テキスト・データを操作するユーティリティ・プログラムやプログラミング言語でよく使われます。
正規表現は非常に強力です。
<!--
=== 応用例 ===
様々なソフトウェア・アプリケーションが、特定のセクション・テキストの検索、選択、修正に正規表現を使用しています。例えば、正規表現を使って次のようなことができます。
* プログラミング言語▼
** [[Java]]▼
** [[JavaScript/正規表現|JavaScript]]▼
** [[Perl/正規表現|Perl]]▼
** [[PHP]]▼
** [[Python#正規表現|Python]]▼
** [[Ruby]]▼
* テキスト全体の「snake」という単語を「serpent」という単語に置き換える。
* 同じ行にある "fox "と "sheep "という単語を含むテキストを探す
=== 正規表現の構成要素 ===
しばしば混同されるのですが、シェルなどのワイルドカードとして知られる [[w:グロブ|glob]] とは異なります。▼
正規表現は3種類のコンポーネントで構成されています。
* テキストの行に対するパターンの位置を指定するためのアンカー。
* 1つの位置にある1つまたは複数の文字にマッチさせるための文字セット。
* 文字セットが何回繰り返されるかを指定するための修飾子。
--->
== サポートしているソフトウェア ==
正規表現は、コマンドラインツール、プレーンテキストエディタ、プログラミング言語など、さまざまなソフトウェアツールでサポートされています。
これらのツールのほとんどは、Linux、Windows、Mac OS Xなどの様々なコンピューティングプラットフォームで利用できます。
これらのツールは、それぞれ微妙に異なる構文を採用しています。いくつかの注目すべきものを見てみましょう。
正規表現を使用するツールは以下の通りです。
; コマンドラインツール
: grep
: egrep
: sed
: awk
; プレーンテキストエディタ
: ed
: vi(ex)
: emacs
: Tcl
正規表現は、より大きなテキストセットからサブセットを見つけたり、分離したりする小さなコンピュータプログラムと考えることができます。
通常のコンピュータプログラムがそれを実行するためにコンピュータを必要とするのと同じように、正規表現はそれを解釈し、意味を与えるためのソフトウェア・アプリケーションを必要とします。
▲しばしば混同されるのですが、シェルなどのワイルドカードとして知られる [[w:グロブ|glob]] とは異なります。
== 文法 ==
ここでは特定のプログラミング言語やソフトウェアによらない基本的な正規表現の文法を
{| class="wikitable"
|