正则表达式删除字母,符号除数字

时间:2011-07-11 11:20:31

标签: javascript regex symbols

如何删除∞§¶•ªºº«≥≤÷之类的字母和符号,但保留0-9的普通数字,我希望能够不允许输入字段中的字母或某些符号,只留下数字。

Demo

如果您放置了¡ € # ¢ ∞ § ¶ • ª之类的任何符号,它仍然不会从输入字段中删除它。你如何删除符号? \w修饰符也不起作用。

5 个答案:

答案 0 :(得分:81)

您可以使用\D表示非数字

var removedText = self.val().replace(/\D+/g, '');

jsFiddle

您也可以使用HTML5 number input

<input type="number" name="digit" />

jsFiddle

答案 1 :(得分:22)

如果你想要花车,请使用/[^0-9.,]+/

答案 2 :(得分:17)

简单:

var removedText = self.val().replace(/[^0-9]+/, '');

^ - 表示不

答案 3 :(得分:5)

尝试以下正则表达式:

var removedText = self.val().replace(/[^0-9]/, '');

这将匹配0-9区间内^)的每个字符。

Demo

答案 4 :(得分:3)

如果您只想保留数字,请使用/[^0-9]+/代替/[^a-zA-Z]+/