Ksh ha apoyado patrones extendidos limitados desde ksh88, utilizando la sintaxis
special '(' pattern ')'
.
En ksh88, los prefijos 'especiales' de carácter cambiar el número de coincidencias se esperaba:
'*' for zero or more matches
'+' at least one match
'@' for exactly one match
'?' for zero or one matches
'!' for negation
En ksh93, esto se amplió con
'{' min ',' max '}'
expresar una gama exacta:
for w in 1423 12 "" abc 23423 9 33 3 333
do
[[ $w == {1,3}(\d) ]] && print $w has between 1 and three digits
[[ $w == {2}(\d) ]] && print $w has exactly two digits
done
Y, por último, puede tener un montón de perl con '~', que presenta un nuevo la clase de extensiones, incluyendo expresiones regulares completos con:
'~ (E) (expresiones regulares)'
Más ejemplos se pueden encontrar en Finnbarr P. Murphy's blog
Durante el uso de egrep va a funcionar, es un programa externo y voluntad ralentizar el script mucho. – user1683793