J'écris un script qui exécute des scripts stockés dans un répertoire donné, basé sur un tableau contenant les noms de fichiers des scripts. Voici une section de mon « menu », juste pour préciser:
Expressions régulières Bash: Correspondance des nombres 0-1000
#######
Title: Test script 1
Description: Test script 1
To execute: 0
#######
Title: Test script 2
Description: Test script 2
To execute: 1
#######
J'ai un tableau tableau nommé qui contient les noms des scripts avec un indice correspondant à la valeur imprimée sous « pour exécuter ». À l'heure actuelle, j'utilise une déclaration de cas pour gérer les entrées et fournir une option de sortie.
case $REPLY in
[Ee]) clear
exit;;
[[:digit:]] $scriptDirectory/${array[$REPLY]}
Cependant, l'expression [[: digit:]] correspond uniquement à 0-9. J'ai besoin d'une regex qui fonctionne dans l'instruction case correspondant à 0-999, ou similaire.
'/ \ b ([1-9] [0-9] [0-9] | [1-9] [0 -9] | [0-9]) \ b/' – YOU