1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187
|
<?xml version="1.0" encoding="UTF-8"?>
<!--
* Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
* Copyright (C) INRIA -
*
* This file must be used under the terms of the CeCILL.
* This source file is licensed as described in the file COPYING, which
* you should have received as part of this distribution. The terms
* are also available at
* http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
*
-->
<refentry version="5.0-subset Scilab" xml:id="strsplit" xml:lang="en"
xmlns="http://docbook.org/ns/docbook"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:ns4="http://www.w3.org/1999/xhtml"
xmlns:mml="http://www.w3.org/1998/Math/MathML"
xmlns:db="http://docbook.org/ns/docbook">
<info>
<pubdate>$LastChangedDate: 2006-08-08 16:57:13 +0200 (Tue, 08 Aug 2006)
$</pubdate>
</info>
<refnamediv>
<refname>strsplit</refname>
<refpurpose>split a string into a vector of strings</refpurpose>
</refnamediv>
<refsynopsisdiv>
<title>Calling Sequence</title>
<synopsis>
v = strsplit(str,ind)
[v, matched_separators] = strsplit(str)
[v, matched_separators] = strsplit(str, matrix_of_strings, limit)
[v, matched_separators] = strsplit(str, regexp_pattern, limit)
</synopsis>
</refsynopsisdiv>
<refsection>
<title>Parameters</title>
<variablelist>
<varlistentry>
<term>str</term>
<listitem>
<para>A character string to split</para>
</listitem>
</varlistentry>
<varlistentry>
<term>ind</term>
<listitem>
<para>a vector of stricly increasing indices in the interval
<literal>[1 length(str)-1] </literal>.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>v</term>
<listitem>
<para>the resulting column vector of string (dimension ><literal>
size(ind,'*')+1</literal>).</para>
</listitem>
</varlistentry>
<varlistentry>
<term>matched_separators</term>
<listitem>
<para>a column vector of the matched separators</para>
</listitem>
</varlistentry>
<varlistentry>
<term>matrix_of_strings</term>
<listitem>
<para>a matrix of strings to search in str</para>
</listitem>
</varlistentry>
<varlistentry>
<term>regexp_pattern</term>
<listitem>
<para>a regular expression pattern</para>
</listitem>
</varlistentry>
<varlistentry>
<term>limit</term>
<listitem>
<para>maximum of limit elements</para>
</listitem>
</varlistentry>
</variablelist>
</refsection>
<refsection>
<title>Description</title>
<para><literal>v = strsplit(str, ind)</literal> splits the string
<literal>str</literal> into a vector of strings at the points given by the
indices in <literal>ind</literal> (after each characters pointed to by the
index in ind).</para>
<para><literal>strsplit(str)</literal> returns same thing as
<literal>strsplit(str,1:length(str)-1).</literal></para>
<para><literal>strsplit(str, regexp_pattern, limit)</literal> returns an
column vector of strings, each of which is a substring of str formed by
splitting it on boundaries formed by the case-sensitive regular expression
pattern.</para>
<para>If there are n occurrences of pattern , the returned array will
contain n+1 items.</para>
<para>For example, if there is no occurrence of pattern , an array with
only one element will be returned. Of course, this is also true if str is
empty.</para>
<para>If limit is set, the returned array will contain a maximum of limit
elements with the last element containing the whole rest of string.</para>
<para><literal>strsplit(str, matrix_of_strings, limit)</literal> , str is
splitted on any of elements. It allows to split on different separators
for users without regex knowledge.</para>
<para>If <literal>strsplit()</literal> is called with a second output
argument, the column vector of the matched separators is returned.</para>
</refsection>
<refsection>
<title>Examples</title>
<programlisting role="example"><![CDATA[
S='strsplit splits a string into a vector of strings';
strsplit(S,[15 25 30])
ind=strindex(S,' ')
[r_1, r_2] = strsplit("abcd")
[r_1, r_2] = strsplit("root:x:0:0:root:/root:/bin/bash",":",5)
[r_1, r_2] = strsplit("abc,def:ijk,:lmo","/:|,/")
[r_1, r_2] = strsplit("abc,def:ijk,:lmo",[":";","])
strsplit("abcdef2ghijkl3mnopqr6stuvw7xyz","/\d+/")
[r_1, r_2] = strsplit("abcdef2ghijkl3mnopqr6stuvw7xyz","/\d+/",2)
]]></programlisting>
</refsection>
<refsection>
<title>See Also</title>
<simplelist type="inline">
<member><link linkend="strcat"> strcat</link></member>
<member><link linkend="tokens"> tokens</link></member>
<member><link linkend="regexp"> regexp</link></member>
</simplelist>
</refsection>
<refsection>
<title>Authors</title>
<variablelist>
<varlistentry>
<term>S. Steer, Allan CORNET</term>
<listitem>
<para>INRIA, DIGITEO</para>
</listitem>
</varlistentry>
</variablelist>
</refsection>
</refentry>
|