Поле проверки валюты содержит только 1 полный останов - PullRequest
0 голосов
/ 28 июля 2010

Может кто-нибудь, пожалуйста, помогите мне составить регулярное выражение для проверки строки валюты в определенном формате - 300,00

Она может иметь только цифры как до, так и после '.'Однако я хочу только одно вхождение «.».

Следовательно 300,00.или 300.0.0 неверно.

regards

Ответы [ 5 ]

2 голосов
/ 28 июля 2010

Если вы хотите представить строку, которая является строго правильной для валюты, то вам, скорее всего, нужно что-то вроде ^\d+\.\d{2}$, поскольку вы обычно представляете валюту с двумя десятичными знаками.Если вы не разборчивы, то ^\d+\.\d+$ будет соответствовать любому количеству десятичных знаков или ^\d+\.?\d*$ будет соответствовать целым числам, а также числам с любым количеством десятичных знаков.

2 голосов
/ 28 июля 2010
^[0-9]+\.?[0-9]*$

Это означает начало строки (^), одну или несколько цифр ([0-9]+), необязательный период (\.?), затем 0 или более цифр, затем конец строки.Вы можете изменить его по мере необходимости, например, чтобы разрешить строки, начинающиеся с точки (изменить сначала + на *) или сделать период обязательным (удалить ?).

1 голос
/ 28 июля 2010

за ответ @ mathew вы, вероятно, захотите закрепить свое регулярное выражение в начале и конце строки (соответственно ^ и $ соответственно).per @eldarerathis вы, вероятно, хотите ограничить количество цифр после десятичной точки.Вы также можете разрешить дополнительный знак $ перед;и вы, вероятно, хотите разрешить пользователю вообще отбрасывать компонент цента.Итак:

^\$?\d+(\.\d\d)?$

Что составляет

^         start of string
\$?       optional dollar sign
\d+       at least 1 digit.
(\.\d\d)? optional decimal point followed by exactly two digits 
          (you could use \d{2} here as well)
$         end of string
1 голос
/ 28 июля 2010

Используйте это регулярное выражение для сопоставления -

^\d+\.\d+$
1 голос
/ 28 июля 2010

Я думаю, что это будет сделано: ^\d+\.\d+$

Это будет соответствовать строке, состоящей из одной или нескольких цифр, ровно одной буквы "." И одной или нескольких цифр.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...