2013-09-05 4 views
-2

У меня есть этот кодJquery Regex заменить

$('#total-marks').keyup(function() {  // #total-marks is a text input 
    this.value = this.value.replace(/[^0-9]/g,''); 
}); 

я хочу достичь следующего регулярного выражения,

  1. только числовых значений
  2. Non 0 в начале
  3. не более чем три знак

Может кто-нибудь помочь меня с обновлением регулярного выражения в соответствии с вышеуказанными требованиями?

Заранее спасибо.

+0

какую версию JQuery ты пользуешься? – Farax

+0

Я думаю, что вы ищете это [** скрипка **] (http://jsfiddle.net/jUat9/) –

+0

@Farax jQuery v1.10.1 – user1828822

ответ

0

попробовать этот Regex:

(^[1-9][0-9]){3}$ 

Regexplained 1 here

или

(^[1-9][0-9]){0,3}$ 

Regexplained 2 here

+0

Ниже результат 1) он позволяет алфавит, я хочу только цифры (не начиная с 0 или <0) 2) заменить 2 числовые цифры с «» так не работает me – user1828822

+0

http://jsfiddle.net/jUat9/ – user1828822

+0

-1 для ссылки на ссылку jQuery regex, –

1

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

^([1-9])([0-9]{0,2})$ 

Update:

Попробуйте это:

$('#total-marks').keyup(function() { 
    var val = this.value; 
    var match = val.match(/^[1-9][0-9]{0,2}/); 
    this.value = match? match[0]:""; 
}); 

Working Fiddle

+0

http://jsfiddle.net/jUat9/ – user1828822

+0

-1 для ссылки на ссылку jQuery regex –

Смежные вопросы