EReg

EReg (Class)

The EReg class represents regular expressions.

While basic usage and patterns consistently work across platforms, some more complex operations may yield different results. This is a necessary trade- off to retain a certain level of performance.

EReg instances can be created by calling the constructor, or with the special syntax ~/pattern/modifier

EReg instances maintain an internal state, which is affected by several of its methods.

A detailed explanation of the supported operations is available at https://haxe.org/manual/std-regex.html

Static Members

escape(s: String): String

Escape the string s for use as a part of regular expression.

If s is null, the result is unspecified.

Name Type
s String
Returns
String

Instance Members

match(s: String): Bool

Tells if this regular expression matches String s.

This method modifies the internal state.

If s is null, the result is unspecified.

Name Type
s String
Returns
Bool

matched(n: Int): String

Returns the matched sub-group n of this EReg.

This method should only be called after this.match or this.matchSub, and then operates on the String of that operation.

The index n corresponds to the n-th set of parentheses in the pattern of this EReg. If no such sub-group exists, the result is unspecified.

If n equals 0, the whole matched substring is returned.

Name Type
n Int
Returns
String

matchSub(s: String, pos: Int, ?len: Int = -1): Bool

Tells if this regular expression matches a substring of String s.

This function expects pos and len to describe a valid substring of s, or else the result is unspecified. To get more robust behavior, this.match(s.substr(pos,len)) can be used instead.

This method modifies the internal state.

If s is null, the result is unspecified.

Name Type Default
s String
pos Int
len Int -1
Returns
Bool

replace(s: String, by: String): String

Replaces the first substring of s which this EReg matches with by.

If this EReg does not match any substring, the result is s.

By default, this method replaces only the first matched substring. If the global g modifier is in place, all matched substrings are replaced.

If by contains $1 to $9, the digit corresponds to number of a matched sub-group and its value is used instead. If no such sub-group exists, the replacement is unspecified. The string $$ becomes $.

If s or by are null, the result is unspecified.

Name Type
s String
by String
Returns
String

map(s: String, f: Function): String

Calls the function f for the substring of s which this EReg matches and replaces that substring with the result of f call.

The f function takes this EReg object as its first argument and should return a replacement string for the substring matched.

If this EReg does not match any substring, the result is s.

By default, this method replaces only the first matched substring. If the global g modifier is in place, all matched substrings are replaced.

If s or f are null, the result is unspecified.

Name Type
s String
f Function
Returns
String

new(r: String, opt: String): Void

Creates a new regular expression with pattern r and modifiers opt.

This is equivalent to the shorthand syntax ~/r/opt

If r or opt are null, the result is unspecified.

Name Type
r String
opt String

Private Members

escapeRegExpRe: EReg


last: String

global: Bool