find a substring that matches the regular expression string
[start] = regexp(input, pattern, [flag]) [start, final] = regexp(input, pattern, [flag]) [start, final, match] = regexp(input, pattern, [flag]) [start, final, match, foundString] = regexp(input, pattern, [flag])
a string.
a character string (under the rules of regular expression).
the starting index of each substring of
input that matches the regular
expression string pattern.
the ending index of each substring of
input that matches the regular
expression string pattern.
the text of each substring of input
that matches pattern.
the captured parenthesized subpatterns.
'o' for matching the pattern once.
The rules of regular expression are similar to Perl language. For a quick start, see http://perldoc.perl.org/perlrequick.html. For a more in-depth tutorial on, see http://perldoc.perl.org/perlretut.html and for the reference page, see http://perldoc.perl.org/perlre.html
A difference with Perl is that matching a position but no character
(for example, with /^/ or
/(?=o)/) is a successful match in Perl but not
in Scilab.
regexp('xabyabbbz','/ab*/','o') regexp('a!','/((((((((((a))))))))))\041/') regexp('ABCC','/^abc$/i') regexp('ABC','/ab|cd/i') [a b c]=regexp('XABYABBBZ','/ab*/i') piString="3.14" [a,b,c,piStringSplit]=regexp(piString,"/(\d+)\.(\d+)/") disp(piStringSplit(1)) disp(piStringSplit(2)) [a,b,c,d]=regexp('xabyabbbz','/ab(.*)b(.*)/') size(d) // get host name from URL myURL="http://www.scilab.org/download/"; [a,b,c,d]=regexp(myURL,'@^(?:http://)?([^/]+)@i') str='foobar: 2012'; // Using named subpatterns [a,b,c,d]=regexp(str,'/(?P<name>\w+): (?P<digit>\d+)/') d(1)=="foobar" d(2)=="2012" | ![]() | ![]() |
| Version | Description |
| 5.4.0 | A new output argument, foundString, has been added to retrieve subpatterns matches. |