タグ

regexpとc++に関するgologo13のブックマーク (4)

  • letsboost::regex

    sample サンプルの動作確認バージョン [GCC4.4/1.41.0] [VC9/1.41.0] #include <iostream> #include <string> #include <boost/regex.hpp> using namespace std; int main() { // <で始まって>で終わる文字列にマッチする正規表現で検索 boost::regex r( "<[^>]+>" ); boost::smatch m; string str1 = "The HTML tag <title> means that ..."; if( boost::regex_search(str1, m, r) ) { cout << "found (pos=" << m.position() << ")" << endl; cout << " ==> " << m.str()

  • re2 - Project Hosting on Google Code

    This is the source code repository for RE2, a regular expression library. For documentation about how to install and use RE2, visit https://github.com/google/re2/. The short version is: make make test make install make testinstall Building RE2 requires Abseil (https://github.com/abseil/abseil-cpp) to be installed on your system. Building the testing for RE2 requires GoogleTest (https://github.com/

    re2 - Project Hosting on Google Code
    gologo13
    gologo13 2010/08/17
    c++で正規表現使いたいときは,boostとかよりもこれを使えばいいのか.
  • boost::regex での正規表現

    文字クラス 角カッコ([ ])で囲まれた部分は文字クラス表現となります。 角カッコで囲まれた文字は、「そのいずれかにマッチする」という意味になります。 例えば、 abc[ACD]123 という正規表現に対しては、 abcA123 abcC123 abcD123 はマッチしますが、 abcAC123 abcX123 などはマッチしません。 また、文字クラス内ではハイフン(-)を用いて「範囲」を表すことができます。 例えば、 abc[3-8]123 という正規表現に対しては abc3123 abc4123 ... abc8123 がマッチします。 さらに、ハット(^)を用いて「否定」を表すことができます。 例えば、 abc[^A-Z]123 という正規表現は文字クラス部分が「大文字のアルファベット以外」 を表現しているので、 abca123 abc%123 などがマッチしますが、 abcX12

  • 株式会社エス・スリー・フォー » 正規表現ライブラリ ‘Boost Regex++’ の使い方

    正規表現ライブラリ ‘Boost Regex++’ の使い方 ‘webを介したプログラムの実行’というアプリケーションの新しい形態が現れ、perl,pythonなどに代表されるスクリプト言語がよく利用されるようになりました。スクリプト言語の多くはテキストすなわち文字列を扱うのを得意としています。 一方C++は文字列を扱うのがあまり得意ではありません。 最近になってようやく文字列を表現するクラスstd::basic_string が標準ライブラリに組み入れられました。 これによって文字列操作を頻繁に行い、かつ移植性の高いアプリケーションの実装がとてもやりやすくなりました。 しかしながら標準の文字列を手に入れたC++でもperlなどのスクリプト言語にかなわないことの一つが’正規表現(regular expression)’です。 たとえばWebの自動巡回を行うアプリケーションを考えてみましょう

  • 1