Browse Source

Merge pull request #3680 from StraToN/regex_get_capture_start

Regex get capture start
Rémi Verschelde 9 years ago
parent
commit
de6d6633ec
2 changed files with 10 additions and 0 deletions
  1. 9 0
      drivers/nrex/regex.cpp
  2. 1 0
      drivers/nrex/regex.h

+ 9 - 0
drivers/nrex/regex.cpp

@@ -21,6 +21,7 @@ void RegEx::_bind_methods() {
 	ObjectTypeDB::bind_method(_MD("is_valid"),&RegEx::is_valid);
 	ObjectTypeDB::bind_method(_MD("get_capture_count"),&RegEx::get_capture_count);
 	ObjectTypeDB::bind_method(_MD("get_capture","capture"),&RegEx::get_capture);
+	ObjectTypeDB::bind_method(_MD("get_capture_start","capture"),&RegEx::get_capture_start);
 	ObjectTypeDB::bind_method(_MD("get_captures"),&RegEx::_bind_get_captures);
 
 };
@@ -68,6 +69,14 @@ String RegEx::get_capture(int capture) const {
 
 }
 
+int RegEx::get_capture_start(int capture) const {
+
+	ERR_FAIL_COND_V( get_capture_count() <= capture, -1 );
+
+	return captures[capture].start;
+
+}
+
 Error RegEx::compile(const String& p_pattern, int capture) {
 
 	clear();

+ 1 - 0
drivers/nrex/regex.h

@@ -35,6 +35,7 @@ public:
 	void clear();
 	bool is_valid() const;
 	int get_capture_count() const;
+	int get_capture_start(int capture) const;
 	String get_capture(int capture) const;
 	Error compile(const String& p_pattern, int capture = 9);
 	int find(const String& p_text, int p_start = 0, int p_end = -1) const;