FreeMat
|
Section: String Functions
Compares two strings for equality, but only looks at the first N characters from each string. The general syntax for its use is
p = strncmp(x,y,n)
where x
and y
are two strings. Returns true
if x
and y
are each at least n
characters long, and if the first n
characters from each string are the same. Otherwise, it returns false
. In the second form, strncmp
can be applied to a cell array of strings. The syntax for this form is
p = strncmp(cellstra,cellstrb,n)
where cellstra
and cellstrb
are cell arrays of a strings to compare. Also, you can also supply a character matrix as an argument to strcmp
, in which case it will be converted via cellstr
(so that trailing spaces are removed), before being compared.
The following piece of code compares two strings:
--> x1 = 'astring'; --> x2 = 'bstring'; --> x3 = 'astring'; --> strncmp(x1,x2,4) ans = 0 --> strncmp(x1,x3,4) ans = 1
Here we use a cell array strings
--> x = {'ast','bst',43,'astr'} x = [ast] [bst] [43] [astr] --> p = strncmp(x,'ast',3) p = 1 0 0 1
Here we compare two cell arrays of strings
--> strncmp({'this','is','a','pickle'},{'think','is','to','pickle'},3) ans = 1 0 0 1
Finally, the case where one of the arguments is a matrix string
--> strncmp({'this','is','a','pickle'},['peter ';'piper ';'hated ';'pickle'],4);