Since 980e9fb, table aliases are parsed using the \w+ regular expression:
foreach my $col (@cols) {
# extract alias, if any
if ($col =~ /^\s* # ignore insignificant leading spaces
(.*[^|\s]) # any non-empty string, not ending with ' ' or '|'
\| # followed by a literal '|'
(\w+) # followed by a word (the alias))
\s* # ignore insignificant trailing spaces
$/x) {
$aliased_columns{$2} = $1;
$col = $self->column_alias($1, $2);
}
}
However, an alias containing whitespace is legal on most RDBMS.