Sto sviluppando un progetto finestra mobile, è necessario scrivere un'espressione regolare per controllare il nome del repository. Requisito come segue:Qual è la differenza tra regex {m, n} e (regex) {m, n}?
- includere solo charatter ASCII, escludere upcase.
- esclusi i caratteri speciali tranne per punto (.), Trattino (-) e sottolineatura (_).
- inizia solo con l'alfabeto e il numero e termina anche con esso.
- I caratteri speciali non possono apparire in modo continuo.
- limite di lunghezza (min: 2, max: 255)
allora, il mio regex è:
([a-z0-9]+(?:[._-][a-z0-9]+)*){2,255}
ma, non può essere OK, quando il nome repository è e-e_1.1
Quando lo cambio in:
[a-z0-9]+(?:[._-][a-z0-9]+)*{2,255}
OK.
C'è qualcuno che può spiegare? Grazie in anticipo.
'regex {m, n}' corrisponde a "rege" seguito da 'm' a' n' volte "x" carattere, '(regex) {m, n}' corrisponde a "regexregexregex..regex" ('m 'per' n' volte) – Maroun
@MarounMaroun regex specificare un'espressione regolare, non specificare una stringa di "regex" – xautjzd