mod 11 cifra di controllo con regex
-
09-09-2019 - |
Domanda
E 'possibile creare una routine di cifre 11 di controllo mod con una dichiarazione regex?
L'nubmer è un numero di 10 cifre,
Passaggio 1: A = (2 ° numero * 2) + (3 ° numero * 4) + (4 ° numero * 8) + (5 ° numero * 5) + (6 ° numero * 10) + (numero 7 * 9) + (numero 8 * 7) + (9 ° numero * 3))
Passaggio 2: B = A / 11 (ignor resto)
Passo 3: C = B * 11
Passo 4: D = A - C
Passo 5: 11 - D deve = 10a cifra
Soluzione
No -. Fondamentalmente hai intenzione di fare la matematica qui, e che in realtà non in forma con le espressioni regolari, che sono solo di modelli
Voglio dire, teoricamente è certamente possibile - si potrebbe elencare tutti i numeri validi, e combinarle in un unico enorme regex. Tuttavia, non è praticamente fattibile.
Altri suggerimenti
Utilizzare regex come una macchina a stati finiti. http://quaxio.com/triple/
Regex fa pattern matching, non proprio l'analisi. È necessario analizzare il numero per ottenere le cifre. Io suggerirei di usare l'espressione regolare per assicurarsi che sia un numero di 10 cifre e poi ToString () e tritarlo in su.