如何将输入字段限制为仅允许*和0-9?

时间:2012-02-03 13:03:12

标签: javascript jquery regex

我花了一整天时间写一个非常复杂的javascript。缺少的成分是一个JavaScript正则表达式,它只允许输入字段包含*和数字。

你认为你能帮忙吗?

3 个答案:

答案 0 :(得分:1)

试试这个

/^(\d|\*)*$/

看看是否有效

答案 1 :(得分:0)

*”字符?你应该可以做[\*0-9]+之类的事情。

您可能需要逃避两次(\\*

根据规范

更新

(\**|\d*)

其中一个或另一个。

答案 2 :(得分:0)

尝试

var bla = '123*', foo = '234*abc';
bla.match(/[*0-9]/g).length === bla.length; //=> true
foo.match(/[*0-9]/g).length === foo.length; //=> false

输入必须是'*'或数字使用
/^\*$/.test([inputstr]) || /^\d+$/.test([inputstr])

var foo = '**', bar = '123', bla = '*', foobar = 'abcd1*';
alert( /^\*$/.test(foo) || /^\d+$/.test(foo) );       //=> false
alert( /^\*$/.test(bar) || /^\d+$/.test(bar) );       //=> true
alert( /^\*$/.test(bla) || /^\d+$/.test(bla) );       //=> true
alert( /^\*$/.test(foobar) || /^\d+$/.test(foobar) ); //=> false

如果'仅限数字'应包含浮点数:
/^\*$/.test(num) || !isNaN(Number(num))