|
NAME
| |
getfields, gettokens, tokenize – break a string into fields
|
SYNOPSIS
| |
#include <u.h>
#include <libc.h>
int getfields(char *str, char **args, int maxargs, int multiflag,
int gettokens(char *str, char **args, int maxargs, char *delims)
int tokenize(char *str, char **args, int maxargs)
|
DESCRIPTION
| |
Getfields places into the array args pointers to the first maxargs
fields of the null terminated UTF string str. Delimiters between
these fields are set to null.
Fields are substrings of str whose definition depends on the value
of multiflag. If multiflag is zero, adjacent fields are separated
by exactly one delimiter. For example
| |
getfields("#alice#bob##charles###", arg, 3, 0, "#");
|
yields three substrings: null-string , alice, and bob##charles###.
If the multiflag argument is not zero, a field is a non-empty
string of non-delimiters. For example
| |
getfields("#alice#bob##charles###", arg, 3, 1, "#");
|
yields the three substrings: alice, bob, and charles###.
Getfields returns the number of fields pointed to.
Gettokens is the same as getfields with multiflag non-zero, except
that fields may be quoted using single quotes, in the manner of
rc(1). See quote(3) for related quote-handling software.
Tokenize is gettokens with delims set to "\t\r\n ".
|
SOURCE
SEE ALSO
|
|