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.
Clone or download
junyer Avoid null PODArray<> issues in SparseSet and SparseArray<>.
Change-Id: Ibd21e4277c2855d8572762e6f6ea9b3f90159273
Reviewed-on: https://code-review.googlesource.com/c/37398
Reviewed-by: Paul Wankadia <junyer@google.com>
Latest commit 6875245 Jan 11, 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 Configure CI using Bazel on macOS and on Windows. Feb 18, 2018
lib/git Cleanup: Remove hg codereview extension. Apr 9, 2015
re2 Simplify SparseArray<> significantly. Jan 11, 2019
util Avoid null PODArray<> issues in SparseSet and SparseArray<>. Jan 11, 2019
.gitignore re2: exclude benchlog results in .gitignore Jul 10, 2015
.travis.yml Add Clang 7 to the Travis CI matrix. Sep 20, 2018
AUTHORS re2: make tables const Jan 10, 2014
BUILD Add PODArray<> and make BitState use it. Aug 30, 2018
CMakeLists.txt Just /source-charset:utf-8 didn't work. Try /utf-8. Dec 19, 2017
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 Note more languages' package sites. Mar 15, 2018
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/tuncer/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).