JS 正则表达式匹配非数字符号,我用Dg匹配字符串中所有非数字符号匹配不到

JavaScript018

JS 正则表达式匹配非数字符号,我用Dg匹配字符串中所有非数字符号匹配不到,第1张

不知道你用的什么函数,如果你用的match函数的话,应该会把所有的非数字的字符放到一个数组中,这是绝对没有问题的。不可能有匹配不到的情况,除非字符串里都是数字。

如果你用exec的话,每次会匹配到一个非数字符号。

\d匹配一个数字字符。等价于 [0-9]。

\D匹配一个非数字字符。等价于 [^0-9]。

\f匹配一个换页符。等价于 \x0c 和 \cL。

\n匹配一个换行符。等价于 \x0a 和 \cJ。

\r匹配一个回车符。等价于 \x0d 和 \cM。

\s匹配任何空白字符,包括空格、制表符、换页符等等。等价于 [ \f\n\r\t\v]。

\S匹配任何非空白字符。等价于 [^ \f\n\r\t\v]。

\t匹配一个制表符。等价于 \x09 和 \cI。

\v匹配一个垂直制表符。等价于 \x0b 和 \cK。

可以使用JavaScript的正则表达式进行验证,验证函数如下:

function check(str){

return /^[\da-z]+$/i.test(str)

}解释:

1.

^表示匹配字符串开头

2.

$表示匹配字符串结尾

3.

\d表示匹配数字

4.

a-z表示字母

5.

[]表示集合,表示一个字符是[]中任意一个

6.

+表示匹配1个或1个以上,[]+表示匹配[]中的1个以上字符

7.

表达式后面的i表示忽略大小写

8.

test函数用于验证字符串是否满足正则表达式,如果满足,返回true,否则返回false