Core Function RegexEscape

From Sputnik Wiki
Jump to: navigation, search
RegexEscape( <expression>, <delimiter> )

Contents

Description

Escape regular expression characters.

RegexEscape() takes a string and puts a backslash in front of every character that is part of the regular expression syntax.

This is useful if you have a run-time string that you need to match in some text and the string may contain special Regexp characters.

Escapes a minimal set of characters (\, *, +, ?, |, {, [, (,), ^, $,., #, and white space) by replacing them with their escape codes.

This instructs the regular expression engine to interpret these characters literally rather than as metacharacters.

Parameters

expression

The string to use.

delimiter

Optional; A string containing extra characters to also add escapes to.

The most common would be '/'

Return Value

Success: Returns the escaped string.

Failure: Returns empty string.

Remarks

None.

Example

// Obviously using @"" is the best way use Regexp strings
say @"(\w+)\s(\1)";                             // Prints: (\w+)\s(\1)
say RegexEscape(@"(\w+)\s(\1)");                // Prints: \(\\w\+\)\\s\(\\1\)
say RegexUnEscape(RegexEscape(@"(\w+)\s(\1)")); // Prints: (\w+)\s(\1)

Example of using the delim

$keywords = '$40 for a g3/400';
$keywords = RegexEscape($keywords, '/');
say $keywords;
// Prints: \$40\ for\ a\ g3\/400

Another example of using the delim

$keywords = '$40 for a g3/400';
$keywords = RegexEscape($keywords, '/0');
say $keywords;
// Prints: \$4\0\ for\ a\ g3\/4\0\0
Personal tools
Namespaces
Variants
Actions
Navigation
Toolbox