[Top]
Process
|
Method Process.split_quoted_string()
- Method
split_quoted_string
array(string) split_quoted_string(string s, int(0..1)|void nt_mode)
- Description
Splits the given string into a list of arguments, according to
common (i.e. /bin/sh-based) command line quoting rules:
Sequences of whitespace, i.e. space, tab or newline, are treated
as argument separators by default.
Single or double quotes (' or ") can be used
around an argument to avoid whitespace splitting inside it. If
such quoted strings are used next to each other then they get
concatenated to one argument; e.g. a"b"'c' becomes a
single argument abc.
Backslash (\) can be used in front of one of the space
or quote characters mentioned above to treat them literally.
E.g. x\ y is a single argument with a space in the
middle, and x\"y is a single argument with a double
quote in the middle.
A backslash can also be used to quote itself; i.e. \\
becomes \.
Backslashes in front of other characters are removed by default.
However, if the optional nt_mode flag is set then they are
retained as-is, to work better with Windows style paths.
Backslashes are treated literally inside quoted strings, with
the exception that \" is treated as a literal "
inside a "-quoted string. It's therefore possible to
include a literal " in a "-quoted string, as
opposed to '-quoted strings which cannot contain a
'.
|