Qui ci sono più post che catturano il valore, ma sto solo cercando di verificare se il valore è qualcosa. Più vagamente messo; Sto cercando di capire la differenza tra controllare un valore e "catturare" un valore. Nel caso corrente il valore sarebbe i seguenti formati di denaro accettabili:Qualcuno può spiegare una regex di soldi che controlla solo se il valore corrisponde ad un modello?
Here is a post che spiega alcuni su un regex di soldi, ma io non lo capisco un po '.
.50
50
50.00
50.0
$5000.00
$.50
Non voglio virgole (la gente dovrebbe sapere che è ridicolo).
La cosa che sto avendo problemi con sono:
- consentendo un $ alla partenza del valore (ma ancora opzionale)
- Tenendo conto solo 1 punto decimale (ma non permettendo a la fine)
- Capire come funziona all'interno
- Comprendere anche fuori per ottenere una versione normalizzata (solo cifre e un punto decimale opzionale) fuori di esso che strisce il simbolo del dollaro.
mio regex corrente (che ovviamente non funziona a destra) è:
# I'm checking the Boolean of the following:
re.compile(r'^[\$][\d\.]$').search(value)
(Nota: sto lavorando in Python)
Pensi virgole nei valori monetari sono ridicoli? Molte culture scrivono i loro valori monetari usando una virgola invece di un decimale; per esempio, € 4,99. – Rob
Nella tua domanda scrivi "Permetti solo 1 punto decimale (ma non lo permetti alla fine)", ma in un commento chiedi come farlo in modo che corrisponda alla fine ... quale vuoi? Entrambi? –