* 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.
Front page
List of pages
Search
Recent changes
リンク
Help
New
リンク
手動リンク
自動相互リンク
駄でべWiki:FrontPage
Help
整形ルール
プラグインマニュアル
浮子屋商店もよろしく。
create a new page, using
正規表現講座/4
as a template.
Start:
TITLE:間違いだらけの正規表現講座 level 4
#contentsx
* まとめて1つ [#k3a8a2d2]
なんとなく書いてきたこの記事も、第4回になりました。~
多分第10回くらいまでは続くと思います。
さて今回は、「まとめて1つ」について覚えましょう。~
だんだん「伏字」ではなくなってきますが、そこが正規表現の...
* これまとめといて! [#rb24ddfd]
さて、今回の記号です。
()
カッコです。全角ではなく半角カッコですよ。~
この記号には2つの役割があります。~
-カッコの中の正規表現をまとめて1つの正規表現として扱う(...
-そのまとまった正規表現を、後で使えるように保存しておく(...
今回は、前者の「まとめて1つの正規表現として扱う」機能に...
この「まとめて1つの正規表現として扱う」ことを、「グルー...
「後で使えるように保存しておく」機能については、また後で...
今は忘れても大丈夫です。
「1つの正規表現として扱う」とはどういう意味でしょうか。~
例えば、次のような文字列を探したい場合、どうすればよいか...
うはうはうはうはうはうはうは
「うは」が1回以上繰り返す、という文字列です。~
「1回以上繰り返す」は、前回覚えました。「+」という記号で...
では、次のような正規表現でマッチできるでしょうか。
うは+
やってみるとわかりますが、これではマッチできません。~
「+」の記号は、「直前の正規表現の1回以上の繰り返し」です...
今回「+」記号がくっつく相手は、「は」です。~
つまり、この正規表現では、「うは」「うはは」「うはははは...
マッチしますが、「うはうはうは」にはマッチできないのです。
こんな場合に効力を発揮するのが、今回の記号「()」です。
(うは)+
こうすることで、「(うは)」は「まとめて1つの正規表現とし...
「+」記号は、そのまとまった1つの正規表現に対して働きます...
つまり、「+」記号がくっつくのが、「うは」に拡張されるわけ...
* カッコの中にも正規表現 [#ea2e6d04]
さて、このカッコの中でも、好きな正規表現を使うことができ...
例えば、
(うは+)+
この表現、どんな文字列にマッチすると思いますか。~
「うは+」だけだと、「うは」「うははは」といった文字列にマ...
そして、それに対してさらに「+」がくっつきます。つまり、
「『うは』『うははは』といった文字列の1回以上の繰り返し...
うはうはうはははははうはうはははうは
といった文字列にマッチするわけです。
* 練習 [#n1307454]
&attachref(./regex4.png,nolink);
さて、練習の時間です。
今回は、次のような文字にマッチする正規表現を考えてみてく...
うはwwwwwwうぇwwwwうぇうぇwwwっうぇwwwっ...
分解すると、
-「うは」が先頭にあり
-その後に以下の表現が1回以上繰り返す
--「っ」が0回または1回あり
--その後に「うぇ」が0回以上あり
--その後に1文字以上の「w」が続く
ちょっと難しいですね。でも、順番に組み立てていきましょう。~
まず、「うは」が先頭にあるので、うは、と書きましょう。
うは
その後に以下の表現が1回以上繰り返す、とあるので、今日覚...
うは()+
カッコの中身は、まず、「っ」が0回または1回なので、こう...
うは(っ?)+
その次に、「うぇ」が0回以上続くのですね。
うは(っ?(うぇ)*)+
最後に、「w」が1文字以上続きます。
うは(っ?(うぇ)*w+)+
正規表現テスターを立ち上げ、適当な文字列を入れて、試して...
* ちょっと脱線 [#f68570b1]
今回お話した正規表現を使うと、正規表現テスターのツリーに、
「グループ」「キャプチャ」といったものが増えると思います。
これは、「()」でまとめた文字列を、後で切り出すのに使いま...
「どの部分にどれがマッチしたか」を見るのにも使えますので、
もし興味があれば、「グループ」や「キャプチャ」をクリック...
どれに何がマッチしたのかをちょっと見てみると面白いかもし...
* ご指摘などはこちらへ [#m63596bc]
#comment
End:
TITLE:間違いだらけの正規表現講座 level 4
#contentsx
* まとめて1つ [#k3a8a2d2]
なんとなく書いてきたこの記事も、第4回になりました。~
多分第10回くらいまでは続くと思います。
さて今回は、「まとめて1つ」について覚えましょう。~
だんだん「伏字」ではなくなってきますが、そこが正規表現の...
* これまとめといて! [#rb24ddfd]
さて、今回の記号です。
()
カッコです。全角ではなく半角カッコですよ。~
この記号には2つの役割があります。~
-カッコの中の正規表現をまとめて1つの正規表現として扱う(...
-そのまとまった正規表現を、後で使えるように保存しておく(...
今回は、前者の「まとめて1つの正規表現として扱う」機能に...
この「まとめて1つの正規表現として扱う」ことを、「グルー...
「後で使えるように保存しておく」機能については、また後で...
今は忘れても大丈夫です。
「1つの正規表現として扱う」とはどういう意味でしょうか。~
例えば、次のような文字列を探したい場合、どうすればよいか...
うはうはうはうはうはうはうは
「うは」が1回以上繰り返す、という文字列です。~
「1回以上繰り返す」は、前回覚えました。「+」という記号で...
では、次のような正規表現でマッチできるでしょうか。
うは+
やってみるとわかりますが、これではマッチできません。~
「+」の記号は、「直前の正規表現の1回以上の繰り返し」です...
今回「+」記号がくっつく相手は、「は」です。~
つまり、この正規表現では、「うは」「うはは」「うはははは...
マッチしますが、「うはうはうは」にはマッチできないのです。
こんな場合に効力を発揮するのが、今回の記号「()」です。
(うは)+
こうすることで、「(うは)」は「まとめて1つの正規表現とし...
「+」記号は、そのまとまった1つの正規表現に対して働きます...
つまり、「+」記号がくっつくのが、「うは」に拡張されるわけ...
* カッコの中にも正規表現 [#ea2e6d04]
さて、このカッコの中でも、好きな正規表現を使うことができ...
例えば、
(うは+)+
この表現、どんな文字列にマッチすると思いますか。~
「うは+」だけだと、「うは」「うははは」といった文字列にマ...
そして、それに対してさらに「+」がくっつきます。つまり、
「『うは』『うははは』といった文字列の1回以上の繰り返し...
うはうはうはははははうはうはははうは
といった文字列にマッチするわけです。
* 練習 [#n1307454]
&attachref(./regex4.png,nolink);
さて、練習の時間です。
今回は、次のような文字にマッチする正規表現を考えてみてく...
うはwwwwwwうぇwwwwうぇうぇwwwっうぇwwwっ...
分解すると、
-「うは」が先頭にあり
-その後に以下の表現が1回以上繰り返す
--「っ」が0回または1回あり
--その後に「うぇ」が0回以上あり
--その後に1文字以上の「w」が続く
ちょっと難しいですね。でも、順番に組み立てていきましょう。~
まず、「うは」が先頭にあるので、うは、と書きましょう。
うは
その後に以下の表現が1回以上繰り返す、とあるので、今日覚...
うは()+
カッコの中身は、まず、「っ」が0回または1回なので、こう...
うは(っ?)+
その次に、「うぇ」が0回以上続くのですね。
うは(っ?(うぇ)*)+
最後に、「w」が1文字以上続きます。
うは(っ?(うぇ)*w+)+
正規表現テスターを立ち上げ、適当な文字列を入れて、試して...
* ちょっと脱線 [#f68570b1]
今回お話した正規表現を使うと、正規表現テスターのツリーに、
「グループ」「キャプチャ」といったものが増えると思います。
これは、「()」でまとめた文字列を、後で切り出すのに使いま...
「どの部分にどれがマッチしたか」を見るのにも使えますので、
もし興味があれば、「グループ」や「キャプチャ」をクリック...
どれに何がマッチしたのかをちょっと見てみると面白いかもし...
* ご指摘などはこちらへ [#m63596bc]
#comment
Page: