Sto eseguendo una piccola stringa di convalida con findstr
e il suo flag /r
per consentire espressioni regolari. In particolare mi piacerebbe convalidare interi.Espressioni regolari nel findstr
La regex
^[0-9][0-9]*$
funzionava bene per i numeri non negativi, ma dato che ora sostengo numeri negativi così ho provato
^([1-9][0-9]*|0|-[1-9][0-9]*)$
sia per numeri interi positivi o negativi o zero.
Il regex funziona bene teoricamente. L'ho provato in PowerShell e corrisponde a quello che voglio. Tuttavia, con
findstr /r /c:"^([1-9][0-9]*|0|-[1-9][0-9]*)$"
no.
Mentre so che findstr
non ha il supporto di regex più avanzato (anche sotto Notepad ++ che è probabilmente un risultato), mi sarei aspettato che tali espressioni semplici funzionassero.
Qualche idea su cosa sto facendo male qui?
Nota per l'editor: il * Windows * tag è un po 'superfluo, visto che 'findstr' esiste solo lì ... – Joey
Rossel: I tag sono lì per aiutare a trovare le cose. In questo caso una moderata ridondanza non fa male. – jfs
Non avrei mai cercato un tag sovraffollato come * windows * ;-) ma se pensi che ti possa aiutare ... – Joey