Регулярное выражение Javascript для десятичного разделителя с запятой - PullRequest
2 голосов
/ 18 января 2012

Мне нужно регулярное выражение, которое соответствует значениям в валюте, аналогичным приведенным здесь: Regex for Money

т.е. «1000», «1000,0» и «1000,00»

но мне нужно, чтобы он работал с использованием JavaScript:

 var RE = /^-{0,1}\d*\.{0,1}\d+$/; //validates decimal format such as 1000.50
    if (locale == "fr") {
        RE = \d+(?:,\d{1,2})? //this line fails when validated using the javascript below
    }
    return (RE.test(valueToValidate));

Ответы [ 2 ]

3 голосов
/ 18 января 2012

Литеральное регулярное выражение в javascript должно быть определено с / вокруг шаблона

var RE = /^-{0,1}\d*\.{0,1}\d+$/; //validates decimal format such as 1000.50
if (locale == "fr") {
    RE = /\d+(?:,\d{1,2})?/ //this line fails when validated using the javascript below
}
return (RE.test(valueToValidate));
0 голосов
/ 18 января 2012

Просто проверка синтаксиса: вы забыли косую черту во втором назначении?

...