Voglio ottenere un elenco di tutti i valori possibili per un'espressione regolare.Come posso generare tutti i numeri possibili da questa espressione regolare?
ingresso:
2W
9WW
7W0W3
dove W
può essere qualsiasi cifra compresa tra 0 e 9. cioè W = [0-9]
uscita:
20,21,22,....29
900,901,...910,911,...999
70003,70013,70023,...71003,72003,...79093
Quello che ho fatto:
Sto usando Java e ho deciso di creare un numero ArrayList
di Integers.
Ho creato un metodo ArrayList<Integer> getNumbers(String regex)
.
ArrayList<Integer> getNumbers(String regex){
ArrayList<Integer> fullList = new ArrayList<Integer>();
char[] cArray = regex.toCharArray(); //converted the string into a character array.
for(int i=1;i<cArray.length;i++) {
if(cArray[i] == 'W') {
for(int j=0;j<10;j++) {
//I'm not sure what goes here
fullList.add(the number with 'w' at this index replaced by 'j');
}
}
}
return fullList;
}
c'è un modo o biblioteca funzioni migliori disponibili per generare tutti questi numeri?
Come posso ottenere questo risultato?
Qualsiasi aiuto per favore.
Questo è opposto a ciò che fa regex. Non so se ci sono librerie che generano possibili stringhe che corrispondono a un modello. –
Regex non ha nulla a che fare con questa domanda .. Si tratta di logica qui – TheLostMind
Il pacchetto Python 'sre_yield' fornisce un elenco di tutte le stringhe corrispondenti per un modello di espressioni regolari. – IceArdor