Scilab Home page | Wiki | Bug tracker | Forge | Mailing list archives | ATOMS | File exchange
Please login or create an account
Change language to: English - Português - 日本語

Please note that the recommended version of Scilab is 6.1.1. This page might be outdated.
However, this page did not exist in the previous stable version.

Manuel Scilab >> Chaînes de caractères > grep


find matches of a string in a vector of strings

Calling Sequence

row=grep(haystack,needle )
[row,which]=grep(haystack,needle )
row=grep(haystack,needle ,[flag])
[row,which]=grep(haystack,needle ,[flag])



A Row vector of character strings.


A character string or a row vector of character strings . The string(s) to search in haystack.


vector of indices: row where a match has been found or an empty matrix if no match found.


vector of indices: index of needle string found or an empty matrix if no match found.


Character ("r" for regular expression)


Foreach entry of haystack, grep searches if at least a string in needle which matches a substring. The haystack entries index where at least a match has been found are returned in the row output argument. The optionnal which output argument gives the index of first string of needle found.

When using the third parameter flag="r", the needle is expected to be a regular expression string. In this case, grep uses the needle as a regular expression and compares it against haystack according to the regular express rules. See the regexp function for details about regular expressions.

Example #1

In the following example, we search one or two strings in a text, which is stored in the txt variable.

txt=['find matches of a string in a vector of strings'
     'search position of a character string in an other string'
     'Compare Strings'];

grep(txt,['strings' 'Strings'])

[r,w]=grep(txt,['strings' 'Strings'])

Example #2

In the following example, we perform regexp searches.

str = ["hat";"cat";"hhat";"chat";"hcat";"ccchat";"at";"dog"]


See Also

Scilab Enterprises
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Wed Jan 26 16:24:16 CET 2011