2013-09-13 1 views

ответ

0

Попробуйте что-нибудь подобное.

var no = 12045; 
var patt1=/0/; // search pattern 

if (no.toString().match(patt1) !== null){ 
    // contains the character 0 
    alert("character '0' found") 
} else { 
    // does not contain 0 
    alert("'0' not found") 
}; 

Для этого используется JSFiddle.

+1

'g' является штрафным санкцией здесь, поскольку он просит только в том случае, если он существует. и 'i'-регистр, нечувствительный к числам, ничего не делает. – gdoron

+0

Хорошая точка. Обновляя ответ, помните об этом. – StMotorSpark

+1

Как насчет второй проблемы? и вы должны прочитать ['test' vs' match'] (http://stackoverflow.com/q/10940137/601179). – gdoron

3
var no = 123056 
var doesZeroExist = (no+"").indexOf('0') > -1; 
0

Если вы действительно хотите использовать RegExp, да, это возможно:

/0/ соответствовать 0. Заменить 0 с любым другим номером, в том числе 10+

/[035]/ соответствовать одному из 0, 3 ИЛИ 5. Замените их любым количеством, которое вы хотите.

Если вы хотите последовательность чисел, добавьте + после нее.

/(012)+/ будет соответствовать 1 к бесконечным последовательным группам 012, как 012, 012012, 012012012 ...

/012+/ будет соответствовать 01 и 1 к бесконечному числу 2, как, 012, 0122, 01222 ...

Кроме того, лучший инструмент RegExp вы, вероятно, хотите использовать: http://www.debuggex.com/

0
var no='123056'; 
var regex=/0/; 
if (no.match(regex) == 0) { 
    alert('hey'); 
} 

Это даст вам предупреждающее сообщение, если 0 найден.

+0

'== 0'? что это будет 0? – gdoron

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