1:onkeyup="value=value.replace(/[^\d\A-Za-z\u4e00-\u9fa5]/g,'')" 仅允许输入汉字,数字,英文,不允许输入任何特殊字符
2:onkeyup="value=value.replace(/[^\d\A-Za-z\u4e00-\u9fa5\,\.\。\,]/g,'')" 通过斜杠添加其他允许方符号
var str = "ef3a[a2abc14d25raae[n56家;jf[";
var patt1 = /[0-9]/;//1 都是匹配第一个碰到的数字,只匹配一个
// var patt1 = /0-9/; //这个打印出null,完全没用
// var patt1 = /[0-9]/; // 匹配所有的数字--而且只匹配了一次:匹配第一次出现的
// var patt1 = /[a-z]/;//匹配第一个碰到的小写字母
// var patt1 = /[a-z]+/;//+是匹配连续的,
// var patt1 = /[a-z]*/;//啥都没有,也不报错,
var str10=str.replace(/[0-9]/,"h")//成功了替换了第一个数字,成h
var str11=str.replace(/[0-9]+/,"h")//会替换数字,而且连续在一起的都会替换掉
var str12=str.replace(/[0-9]*/,"h")//为什么会在开头增加了一个,仅仅是增加了一个
var str13=str.replace(/[0-9]/g,"h")//成功了替换了所有的数字,g应该就是代表全部--这里是匹配数字
var str14=str.replace(/aa/g,"h")//匹配单词:这样是成功的;
var str15=str.replace(/\[/g,"h")//匹配特殊符号:成功,全部也成功
var str16=str.replace(/aa|b/g,"h")//匹配多个不同的单词;这样是成功的
console.log(str16)
document.write(str.match(patt1));//123
runoo+b,可以匹配 runoob、runooob、runoooooob 等,+ 号代表前面的字符必须至少出现一次(1次或多次)
runoo*b,可以匹配 runob、runoob、runoooooob 等,* 号代表字符可以不出现,也可以出现一次或者多次(0次或1次或多次
colou?r 可以匹配 color 或者 colour,? 问号代表前面的字符最多只可以出现一次(0次、或1次)
多种元字符与运算符可以将小的表达式结合在一起来创建更大的表达式
普通字符(例如字符 a 到 z)+++++++++特殊字符(称为"元字符")组成的文字模式
普通字符包括没有显式指定为元字符的所有可打印和不可打印字符。这包括所有大写和小写字母、所有数字、所有标点符号和一些其他符号
所谓特殊字符,就是一些有特殊含义的字符,如上面说的 runoo*b 中的 *,简单的说就是表示任何字符串的意思。如果要查找字符串中的 * 符号,则需要对 * 进行转义,即在其前加一个 \: runo\*ob 匹配 runo*ob。
$ : \$
( ) \( 和 \)
* \*
+ \+
. \.
[ \[
? \?
\ \\
^ 匹配输入字符串的开始位置,除非在方括号表达式中使用,此时它表示不接受该字符集合。要匹配 ^ 字符本身,请使用 \^
{ 标记限定符表达式的开始。要匹配 {,请使用 \{
| 指明两项之间的一个选择。要匹配 |,请使用 \|
限定符**********