• ベストアンサー

MFCで正規表現

Visal Studio 2005のC++で、MFCアプリとして、正規表現を行う簡単なプログラムを書きたいのですが、方法がわかりません。 できれば、perl互換が良いですが、MFCで一般的なものでかつ、 高速で正規表現の処理をさせたいので64bitでコンパイルしても問題ない ものが知りたいです。 ちなみにVBのRegExpとPerlで正規表現は使ったことがありますので、正規表現自体は多少知っております。 MFCでどのように記述するかが知りたいです。 よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.4

64bitでできるか分からない/Perlと同じか分からない/高速であるか分からないけど、 ATLには正規表現クラスがあります。 http://msdn.microsoft.com/ja-jp/library/k3zs4axe(VS.80).aspx

tobasu
質問者

補足

MFCとALTをよく知らないのですが、 プロジェクトでMFCアプリケーションを選択して作成しているアプリから、 ALTというものは使えるのでしょうか? 使える場合、どのように記述すればよいのでしょうか?

その他の回答 (5)

回答No.6

MSDNに明にリンクが必要とも書かれていませんし、リンクなしでも行けるようですね。 ただ、どうもPerlと結構違うらしいですね。 ちなみにVBScriptでのRegExpクラスもCOMとして扱うことが可能です。 http://vision.kuee.kyoto-u.ac.jp/~nob/doc/win32/win32.html#doc1_95

回答No.5

>ALTというものは使えるのでしょうか? 使えますよ。 プロパティ-構成プロパティ-全般-ATLを○的にリンク とすれば使えるはず。 (動的か静的かは実際のexe配布時を考慮して選択する) サンプルとかはリンク先にもありそうだし、CAtlRegExpをキーワードにWeb検索してみてください。 以上。

tobasu
質問者

お礼

ありがとうございます。 最初のリンク先にあるMSのサンプルをMFCアプリに埋め込んで確かめたところ、動作しました。 >プロパティ-構成プロパティ-全般-ATLを○的にリンク 見てみたのですが、ALTを使用しないになっている状態で、 上のサンプルが動作しましたが、インクルードファイルもつけたためでしょうか? このあたりを明確にしたいです。 ALTを使用しない で 使えるのは?です。

回答No.3

 こんにちは。  boost::regex辺りですかねえ。  http://www.s34.co.jp/cpptechdoc/article/regexpp/  http://boost.cppll.jp/HEAD/  以下からダウンロードです。  http://www.boost.org/

  • php504
  • ベストアンサー率42% (926/2160)
回答No.2

こちらにPerl互換正規表現ライブラリのGnuWin版があります ソースもあります http://gnuwin32.sourceforge.net/packages/pcre.htm

回答No.1

VCのMFCでは正規表現はサポートされていません。 どこかに公開されている正規表現ライブラリを自前で用意しなければなりません。

関連するQ&A