Ciao comunità fantastica,Espressione regolare in Bash Script
Sono una droga completa quando si tratta di regex. Ho rimandato l'apprendimento ... e ora la mia pigrizia mi ha raggiunto.
quello che sto cercando di fare:
Verificare se una stringa corrisponde a questo formato:
10_06_13
es. data odierna o una data simile con "2digits_2digits_2digits"
Quello che ho fatto:
regex='([0-9][0-9][_][0-9][0-9][_][0-9][0-9])'
if [[ "$incoming_string" =~ $regex ]]
then
# Do awesome stuff here
fi
Questo funziona in una certa misura. Ma quando la stringa entrante è uguale a 011_100_131
... continua a superare il controllo regex.
Sarei grato se qualcuno potesse aiutarmi a indicarmi la giusta direzione.
Acclamazioni
Si noti che i caratteri di sottolineatura non devono essere racchiusi tra parentesi quadre. '_' corrisponde alla stessa cosa di' [_] '. – chepner
011_100_131 non corrisponde alla tua espressione regolare. 011_10_131 sarebbe. – hop