* U K I Y A H O N P O *
Nel mezzo del cammin di nostra vita mi ritrovai per una selva oscura,
che la diritta via era smarrita.
リロード   新規 下位ページ作成 編集 凍結 差分 添付 コピー 名前変更   ホーム 一覧 検索 最終更新 バックアップ リンク元   ヘルプ   最終更新のRSS
浮子屋商店もよろしく。

正規表現講座/6 のバックアップソース(No.1)

TITLE:間違いだらけの正規表現講座 level 6

#contents

* 頭から!おしりから! [#o42f3b2e]

だんだん難しくなってきました。第6回です。~
今回は、「位置指定」について覚えましょう。

* 位置指定 [#rac57225]

今まで覚えてきた「メタ文字」、正規表現特有の記号は、どれも、~
1文字だったり複数文字だったりはするものの、「何かの文字」を表す~
メタ文字でした。

今回のはちょっと毛色が異なり、「文字の位置」を表すメタ文字です。

* 先頭と終端 [#s12ba440]

今回の記号は、「^」と「$」です。

これは、「先頭」「終端」をあらわすメタ文字です。

何の先頭、終端でしょうか?
それは、「マルチラインモード」のON/OFFによって意味が異なる場合が~
あるのですが、とりあえず、まずは「行の先頭」「行の終端」と思っていいです。

実際に例を見ないと良く分かりませんね。

-「^[0-9]」これは、行の先頭にある数字にマッチします。行の途中に数字があってもマッチしません。
-「。$」これは、行の最後が。で終わっていれば、その「。」とマッチします。
-「^■.*■$」これは、行の先頭に■があり、その後何か文字列が続いて、行の最後に■がある行全体にマッチします。

つまり、「^」「$」自身はどんな文字ともマッチせず、そのほかの正規表現が~
ある位置を規定するわけです。

* まるちいラインモード [#m72ca27e]

さて、さっきから出てきた「マルチラインモード」とは何かというと、~
「^」「$」が、「行の先頭、終端」なのか、「文字列全部の先頭、終端」なのかを~
決めるモードです。

大抵のエディタでは、「マルチラインモードON」だと思ってください。~
つまり、「^」「$」は行の先頭、終端をあらわす記号となります。

正規表現が使える言語等では、ON/OFFが選べる場合があります。~
「マルチラインモードOFF」だと、「^」「$」は、正規表現を適用する~
文字列全体の先頭、終端、という意味になります。

* ご指摘などはこちらへ [#b35b5afb]

#comment