如何用正则表达式匹配“只能由字母 数字 下划线 百分号 点 组成”

pattern: /^[a-z0-9A-Z._%]+$/ ; 

^在[ ]里面表示“非”;
^在[ ]外面匹配输入字符串的开始位置,即从字符串左边第一个字符开始匹配;
$ 匹配输入字符串的结束位置;
+ 匹配前面的子表达式一次或多次。例如,‘zo+’ 能匹配 “zo” 以及 “zoo”,但不能匹配 “z”。+ 等价于 {1,}。
* 匹配前面的子表达式零次或多次。例如,zo* 能匹配 “z” 以及 “zoo”。* 等价于{0,}。

<script>
var reg=/[^0-9]/;
var str="1a";
console.log(reg.test(str)); //true
</script>
<script>
var reg=/[^0-9]/;
var str="11";
console.log(reg.test(str)); //false
</script>

上述两个示例中,只要有非数字的字符,就为 true,如果所有字符都是数字,则为 false

<script>
var reg=/^[0-9]/;
var str="a1";
console.log(reg.test(str)); //false
</script>
<script>
var regExp=/^[0-9]/;
var str1="1a";
console.log(regExp.test(str1));  //true
</script>

开始的字符是数字,则为 true

你可能感兴趣的:(如何用正则表达式匹配“只能由字母 数字 下划线 百分号 点 组成”)