Regular expressions: Difference between revisions
Content added Content deleted
m (→[[Perl]]: clarification) |
|||
Line 36: | Line 36: | ||
Options |
Options |
||
# add the following just after the / for additional control |
# add the following just after the last / for additional control |
||
# g = globaly (match as many as possible) |
# g = globaly (match as many as possible) |
||
# i = case-insensitive |
# i = case-insensitive |
Revision as of 19:49, 24 January 2007
Regular expressions
You are encouraged to solve this task according to the task description, using any language you may know.
You are encouraged to solve this task according to the task description, using any language you may know.
The goal of this task is
- to match a string against a regular expression
- to substitute part of a string using a regular expression
Perl
Interpreter: Perl v5.8.8
Test
$string = "I am a string"; if ($string =~ /string$/) { print "Ends with 'string'\n"; } if ($string !~ /^You/) { print "Does not start with 'You'\n"; }
Substitute
$string = "I am a string"; $string =~ s/ a / another /; # makes "I am a string" into "I am another string" print $string;
Test and Substitute
$string = "I am a string"; if ($string =~ s/\bam\b/was/) { # \b is a word border print "I was able to find and replace 'am' with 'was'\n"; }
Options
# add the following just after the last / for additional control # g = globaly (match as many as possible) # i = case-insensitive # s = treat all of $string as a single line (incase you have line breaks in the content) # m = multi-line (the expression is run on each line individually) $string =~ s/i/u/ig; # would change "I am a string" into "u am a strung"