What is the definition of a string in Bash?
Bash use the term "string" several places in its documentation, e.g. to document the
=~ operator used for regular expression matching:
An additional binary operator, =~, is available, with the same precedence as == and !=. When it is used, the string to the right of the operator is considered a POSIX extended regular expression and matched accordingly (as in regex(3)).
In the section
DEFINITIONS, I don't see any definition of strings:
DEFINITIONS The following definitions are used throughout the rest of this document. blank A space or tab. word A sequence of characters considered as a single unit by the shell. Also known as a token. name A word consisting only of alphanumeric characters and underscores, and beginning with an alphabetic character or an underscore. Also referred to as an identifier. metacharacter A character that, when unquoted, separates words. One of the following: | & ; ( ) < > space tab newline control operator A token that performs a control function. It is one of the following symbols: || & && ; ;; ;& ;;& ( ) | |& <newline>
So, what exactly are strings in Bash? May they contain whitespace or characters in the
IFS environment variable?
NB: I know strings are normally defined as a series of symbols in an alphabet.