about summary refs log tree commit diff
path: root/manual/string.texi
diff options
context:
space:
mode:
Diffstat (limited to 'manual/string.texi')
-rw-r--r--manual/string.texi11
1 files changed, 11 insertions, 0 deletions
diff --git a/manual/string.texi b/manual/string.texi
index f33303b356..dd3c68d294 100644
--- a/manual/string.texi
+++ b/manual/string.texi
@@ -1182,6 +1182,12 @@ moving pointer has to be done by the user.  Successive calls to
 @var{delimiter}, returning the address of the next token and updating
 @var{string_ptr} to point to the beginning of the next token.
 
+If the input string contains more than one character from
+@var{delimiter} in a row @code{strsep} returns an empty string for each
+pair of characters from @var{delimiter}.  This means that a program
+normally should test for @code{strsep} returning an empty string before
+processing it.
+
 This function was introduced in 4.3BSD and therefore is widely available.
 @end deftypefun
 
@@ -1206,8 +1212,13 @@ token = strsep (&running, delimiters);    /* token => "words" */
 token = strsep (&running, delimiters);    /* token => "separated" */
 token = strsep (&running, delimiters);    /* token => "by" */
 token = strsep (&running, delimiters);    /* token => "spaces" */
+token = strsep (&running, delimiters);    /* token => "" */
+token = strsep (&running, delimiters);    /* token => "" */
+token = strsep (&running, delimiters);    /* token => "" */
 token = strsep (&running, delimiters);    /* token => "and" */
+token = strsep (&running, delimiters);    /* token => "" */
 token = strsep (&running, delimiters);    /* token => "punctuation" */
+token = strsep (&running, delimiters);    /* token => "" */
 token = strsep (&running, delimiters);    /* token => NULL */
 @end smallexample