Skip to content
RE2 is a fast, safe, thread-friendly alternative to backtracking regular expression engines like those used in PCRE, Perl, and Python. It is a C++ library.
Branch: master
Clone or download
junyer Add GCC 9.x to the Travis CI matrix.
Change-Id: I5f7e3ea5fdd23ff181f8d1037e86f7578d21ab0b
Reviewed-on: https://code-review.googlesource.com/c/re2/+/41350
Reviewed-by: Paul Wankadia <junyer@google.com>
Latest commit 0c95bcc May 22, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
benchlog benchlog: Add gnuplot support Jul 17, 2015
doc Update Unicode data to 11.0.0. Jun 17, 2018
kokoro Clarify the scope of a comment. Jan 31, 2019
lib/git Cleanup: Remove hg codereview extension. Apr 9, 2015
re2 Fix the bug in Regexp::ToString() that emitted [^]. May 5, 2019
util Get rid of `using std::string;`. (part 7 of 7) Mar 18, 2019
.gitignore re2: exclude benchlog results in .gitignore Jul 10, 2015
.travis.yml Add GCC 9.x to the Travis CI matrix. May 22, 2019
AUTHORS re2: make tables const Jan 10, 2014
BUILD Add PODArray<> and make BitState use it. Aug 30, 2018
CMakeLists.txt Set an ALIAS and a NAMESPACE in the CMake configuration. Apr 19, 2019
CONTRIBUTING.md re2: more Gerrit+GitHub integration Nov 20, 2014
CONTRIBUTORS Remove comparisons of this with NULL. Jun 26, 2014
LICENSE initial release Mar 3, 2010
Makefile Revert the commits for the shard_cache_mutex option. Dec 19, 2018
README Update the Erlang wrapper URL. Feb 13, 2019
WORKSPACE Add a workspace name based on Bazel guidelines Jul 1, 2016
libre2.symbols Include operator<<() for StringPiece in libre2.so Jun 24, 2018
libre2.symbols.darwin Include operator<<() for StringPiece in libre2.so Jun 24, 2018
re2.pc Plumb more variables from Makefile to re2.pc. May 9, 2016
re2_test.bzl regexp_benchmark doesn't need linkopts. Feb 18, 2018
runtests Kludge around System Integrity Protection on Darwin. Mar 4, 2018
testinstall.cc Get rid of using-directives. Aug 7, 2016
ucs2.diff add ucs2.diff, showing old UCS-2 support Feb 7, 2012

README

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

There is a fair amount of documentation (including code snippets) in
the re2.h header file.

More information can be found on the wiki:
https://github.com/google/re2/wiki

Issue tracker:
https://github.com/google/re2/issues

Mailing list:
https://groups.google.com/group/re2-dev

Unless otherwise noted, the RE2 source files are distributed
under the BSD-style license found in the LICENSE file.

RE2's native language is C++.

A C wrapper is at https://github.com/marcomaggi/cre2/.
An Erlang wrapper is at https://github.com/dukesoferl/re2/ and on Hex (hex.pm).
An Inferno wrapper is at https://github.com/powerman/inferno-re2/.
A Node.js wrapper is at https://github.com/uhop/node-re2/ and on NPM (npmjs.com).
An OCaml wrapper is at https://github.com/janestreet/re2/ and on OPAM (opam.ocaml.org).
A Perl wrapper is at https://github.com/dgl/re-engine-RE2/ and on CPAN (cpan.org).
A Python wrapper is at https://github.com/facebook/pyre2/ and on PyPI (pypi.org).
An R wrapper is at https://github.com/qinwf/re2r/ and on CRAN (cran.r-project.org).
A Ruby wrapper is at https://github.com/mudge/re2/ and on RubyGems (rubygems.org).
You can’t perform that action at this time.