Hi Rich,
Those "?" and "*" You mean are not regex but globbing symbols. As far as I understand the strings in the command line including such symbols are expanded by the shell interpreter according to the files existence (omg). If You'd be lucky to :-)
Here is the program to show its arguments:
tc@box:/tmp/glob$ cat ggg.c
#include <stdio.h>
int main(int argc, char *argv[]) {
while (--argc) printf("%s\n", argv[argc]);
return 0;
}
Let compile it:
$ tcc -o ggg ggg.c
and add some spam:
$ touch ggh ggk
Then:
tc@box:/tmp/glob$ ./g*
./ggk
./ggh
./ggg.c
And:
tc@box:/tmp/glob$ ./ggg ./g*
./ggk
./ggh
./ggg.c
./ggg
But:
tc@box:/tmp/glob$ ./ggg "./g*"
./g*
:-)
As far as I know regexes are used by ed, grep, sed, find, vi (maybe some others?). Regexes may be basic, extended, perl-style, lua-style, and maybe some others.
Have a nice regex!