diff options
| author | punto- | 2015-07-24 13:17:58 -0300 |
|---|---|---|
| committer | punto- | 2015-07-24 13:17:58 -0300 |
| commit | 257dba9a4a545a3e2ff7da3dab348899245fd998 (patch) | |
| tree | 597b33bf8964c4d13089a35d3ed108b7895e1ead /drivers/nrex/regex.h | |
| parent | f697ec2fe022583dde5f3ae650f49cfd7f237c33 (diff) | |
| parent | 69eff35cd5758aa4a6d299989342ae0e08894a8f (diff) | |
| download | godot-257dba9a4a545a3e2ff7da3dab348899245fd998.tar.gz godot-257dba9a4a545a3e2ff7da3dab348899245fd998.tar.zst godot-257dba9a4a545a3e2ff7da3dab348899245fd998.zip | |
Merge pull request #2300 from leezh/nrex-port
New RegEx library
Diffstat (limited to 'drivers/nrex/regex.h')
| -rw-r--r-- | drivers/nrex/regex.h | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/drivers/nrex/regex.h b/drivers/nrex/regex.h new file mode 100644 index 000000000..062602970 --- /dev/null +++ b/drivers/nrex/regex.h @@ -0,0 +1,47 @@ +/*************************************************/ +/* regex.h */ +/*************************************************/ +/* This file is part of: */ +/* GODOT ENGINE */ +/*************************************************/ +/* Source code within this file is: */ +/* (c) 2007-2010 Juan Linietsky, Ariel Manzur */ +/* All Rights Reserved. */ +/*************************************************/ + +#ifndef REGEX_H +#define REGEX_H + +#include "ustring.h" +#include "vector.h" +#include "core/reference.h" +#include "nrex.hpp" + +class RegEx : public Reference { + + OBJ_TYPE(RegEx, Reference); + + mutable String text; + mutable Vector<nrex_result> captures; + nrex exp; + +protected: + + static void _bind_methods(); + StringArray _bind_get_captures() const; + +public: + + void clear(); + bool is_valid() const; + int get_capture_count() const; + String get_capture(int capture) const; + Error compile(const String& p_pattern); + int find(const String& p_text, int p_start = 0, int p_end = -1) const; + + RegEx(); + RegEx(const String& p_pattern); + ~RegEx(); +}; + +#endif // REGEX_H |
