• ベストアンサー

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

  • chie65535
  • ベストアンサー率43% (8526/19384)
回答No.1

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

関連するQ&A

  • VB2005で、正規表現を使いたい

    VB2005で、正規表現を使いたいのですが、Basp21など使わずに.NET標準で備わっているPerl互換のようなものはありますか? VBで正規表現に詳しいサイトや書籍などありましたらご教授ください。

  • VB6でPerl互換の正規表現を使いたい

    VB6でperl互換の正規表現を使いたいのですが可能でしょうか?

  • .htaccessの正規表現

    Perlの正規表現なら少しだけ知っています。 .htaccessの正規表現で、 <Files xx.gif> と <Files 'xx.gif'> は同じですか? <Files "xx.gif"> だと変数展開の動作をしようとするために上記の2つより多少重くなりますか? *.gifとerr.logを1つの<File>タグで記述する場合はどう記述すればよいですか?

  • 秀丸の正規表現はどの流派に属しているのですか?

    秀丸エディタ64 (バージョン8.20)を使用しています。 秀丸の正規表現は、どういった流派(?)の流れを汲んでいるのでしょうか?よく、○○互換の正規表現という言葉がありますよね。Perl互換、.NET互換など、、、Java、C、そのほかの言語/プラットフォームで秀丸の正規表現に最も近いのは何でしょうか、教えてください。

  • VisualBasic6でPerlの正規表現と互換性のあるコンポーネント

    VisualBasic6でPerlの正規表現と互換性のあるコンポーネントを探していますが、そういうものはあるのでしょうか? また、VB6から .NET VB? C#ソースをへコンバートする ツールはありますか? 心配なのは、サードパーティのコンポーネントをどう C$ .NET VBにコンバートするか不安なもので・・・

  • 正規表現のサンプル豊富なサイト

    正規表現の素人です。 サンプル豊富なサイトで勉強させていただきたいのですが、適当なサイトをご紹介いただけないでしょうか。 #perlはわかりません。 #aspのコンポネントでperl互換の正規表現を利用するための勉強。 #aspも初心者レベル。

    • ベストアンサー
    • Perl
  • .NETで正規表現

    .NETで正規表現を使いたいのですが、Perl互換の正規表現を処理するサンプルが知りたいのですが、どうすれば良いのでしょうか? あと、.NETで全てを網羅している辞書みたいな書籍を探しているのですが知っている方教えてください。 .NETは名前空間を理解したら、OKというものでしょうか? 素人で申し訳ありません。

  • 正規表現について

    VB6ですが・・・ '次のようなコードがあって <!-- と --> に囲まれる文字列を抜き出したのですが 'どのようなパターンマッチを書けばいいのでしょうか? 'HTMLのコメントのみを抜き出したいと思っています。 Const s = "<!--今日-->" _ & "<!--僕は--><!--正規表現を--><!--勉強します-->" Dim x As RegExp Dim v As match Set x = New RegExp x.Pattern = "パターン" x.Global = True For Each v In x.Execute(s) Debug.Print v.Value Next

  • 正規表現eregとpreg

    pregがperl互換の正規表現というのは分かったのですが、eregとpregは使い分ける用途などがあるのででしょうか? あるhtmlから<a herf="--">タグを抜く作業に苦労していまして、調べるとどちらも使われているようで、正規表現を勉強するのにも戸惑っています。 せひ宜しくお願いします。

    • ベストアンサー
    • PHP
  • URL\正規表現@java

    perlメモさん?にPerlでのURLの正規表現はあるのですが Javaで使いたいと思います。 Pattern pattern = Pattern.compile("正規表現"); Matcher matcher = pattern.matcher(String); のステートメントを使う方法をご存知な方おられませんか? Perlメモさん?の正規表現をエディタにコピペしても 不正なエスケープエラー?がでてだめでした。 (http Urlのごちゃごちゃした奴の下から二番目) (「\b(?:」で始まる奴です) なのでエディタに貼り付けて\を\\に置き換えたものを 正規表現の部分にしたところコンパイルはとおりましたが、 正確にマッチしてくれませんでした。 よろしくお願いします。

    • ベストアンサー
    • Java