一週間程前に正規表現についての記事「正規表現の“否定”について勘違いと、アンカー」を書いたばっかりですが、
その記事の最後で、グループとかキャプチャとか後方参照とかをまだ分かっていないという課題を挙げました。
というわけで、それについて調べたので、記事にします。
先にグループとかキャプチャとかが何なのかを書こうと思うのですが、これらは正規表現におけるひとかたまりの単位のことです。
まず、グループというのは正規表現のパターン文字列でグループ化の記号()を用いてグループ化された部分のこと、すなわちこれは正規表現の構文としての一つの単位だと認識しています。
たとえば"I am the (king|queen)"というパターン文字列において、まず括弧で囲まれた"(king|queen)"というグループがひとつあります。
ただし、括弧で囲まれていませんが、パターン文字列全体はひとつのグループとするという決まりがあるようで、このパターン文字列には2つのグループがあることになります。
このように、本当はグループというのは木構造になっているのですが、グループを木構造として扱わずに平坦に扱うのが普通のようです。
実装によりけりかもしれませんが、ほとんどがグループを平坦に扱っていると思います。
これは、グループを平坦に扱うと、パターン文字列内のすべてのグループに一次元的な番号を割り振ることができて、後述する後方参照という仕組みを簡単に利用できるようになるためだと思います。
グループにはそれぞれ番号が割り振られます。
どのように割り振られるかというと、これも実装によりけりかもしれませんが、普通は幅優先探索の順番だと思います。
スポンサーサイト
続きを読むtag: 正規表現 パターンマッチ 文字列処理 後方参照 .NET
なんか超久しぶりにプログラミング的な記事ですね。
Visual Studioの待望の新バージョン、Visual Studio 2015の正式版が7月20日(日本時間7月21日)にリリースされました!
私は今年はgccでC言語を学ぶつもりなので、しばらくはインストールしませんが…。
まあ、Windowsタブレットのほうには入れてみようかなと思っています。
ただし、周辺のコンポーネント(?)に一部、来月にならないと正式版が出ないものがあるようなので、そのときまでは待ちますけどね。
あと、ちょくちょく言っていますがgccが上手いことインストールできないままですので、あきらめてVSでC言語をやるかもしれません。
そのときはこれをインストールしようと思います。
たしか、Visual Studio 2012からVisual Studio 2013になったときは、微妙な違いだけでしたが、今回はそれなりに変わったようです。
まず、なんとExpressエディションは2013版で終わりだそうで、これからは無料のVSはVisual Studio Communityエディションだけになります。
Communityエディションは2013版からありましたね。
2013版っていうか、リリースは2014年でしたが。
登場時は当ブログでも取り上げました。
(記事「Visual Studio Communityとかとか!!!」を参照)
このCommunityエディション、なんと実質的にはProfessionalエディションと同等で、しかも無料という、なんとも素晴らしいMSは狂ったのかというエディションです。
ただし、個人使用ならいいんですが、企業や団体で使用するとなったときに制限があります。
公式サイトによると、団体が使用する際は、
・学習、学術調査目的の開発者
・オープン ソース開発者
・中小規模の企業や団体
でないといけないそうです。
上記に該当しない団体が無料でVSを使いたい場合は、Expressエディションを使えということだったのですが、今回Expressエディションが廃止になって、この人達はどうするんですかね…。
まあ上記に該当しない団体っていうと大企業でしょうから、別に有料版を買っても困らない財力だとは思いますけどね。
Expressエディションではこの大企業でさえも無料で使用できました。
続きを読むtag: VisualStudio Roslyn Microsoft .NET コンパイラ
Microsoftが先日「Microsoft Connect();」という発表会を行い、その中で「Visual Studio Community」というVisual Studioの新しいエディションを発表しました。
なんとこのエディション、Visual Studio Proと同等の機能を無償で提供するエディションなのです!
ただし、個人開発者、OSS開発者、非営利団体、年商1億に満たない企業(5人まで)、の人しか使ってはいけないとのことです。
まぁ、私は個人なのでいけますね。
このニュースを知ったときは驚きました。
ただ、私はもうそろそろC言語を始めようかと思っているので、あまり関係ないのですが…。
また、このエディションではXamarinのアドオンでAndroidやiOS向けのアプリを開発することもできます。
最近のMicrosoftはWindowsに取り込むことを諦めて、業界で生き残ることを第一目標にしているのでしょう。
Microsoftの開発まわりの技術は神がかっていますから、無償化やマルチプラットフォーム化なんてしたら多くの人が飛びつくでしょうし、
それでWindowsオンリーの機能、サービスを少しずつ増やしていって、市場はWindowsだらけ…
という魂胆なのかもしれませんが…。
続きを読むtag: Microsoft VisualStudio .NET オープンソース