学科分类
目录
JavaScript网页编程

字符类

字符类是一个字符集,如果字符集中的任何一个字符有匹配,它就会找到该匹配项。正则表达式中的“[]”可以实现一个字符集合,只要求匹配其中的一项,所有可供选择的字符都放在方括号内。常用的字符范围如表1所示。

表1 字符范围示例

pattern(模式) 说明
[cat] 匹配字符集合中的任意一个字符c、a、t
[^cat] 匹配除c、a、t以外的字符
[A-Z] 匹配字母A~Z范围内的字符
[^a-z] 匹配字母a~z范围外的字符
[a-zA-Z0-9] 匹配大小写字母和0~9范围内的字符
[\u4e00-\u9fa5] 匹配任意一个中文字符

接下来我们使用“[]”演示其常见的用法,示例代码如下。

 1  var reg = /[abc]/;

 2  console.log(reg.test('andy'));  // 结果为:true

 3  console.log(reg.test('baby'));  // 结果为:true

 4  console.log(reg.test('color')); // 结果为:true

 5  console.log(reg.test('red'));  // 结果为:flase

 6  var rg = /^[abc]$/;

 7  console.log(rg.test('a'));    // 结果为:true

 8  console.log(rg.test('aa'));    // 结果为:false

 9  console.log(rg.test('b'));    // 结果为:true

 10 console.log(rg.test('c'));    // 结果为:true

 11 console.log(rg.test('abc'));   // 结果为:flase

上述代码中,第1行的reg表达式,表示只要包含有a、b、c中的一个,就返回true。第6行的rg表达式,表示三选一,只有是a或者b或者c这3个字母,才返回true。

“[]”与连字符“-”一起使用,表示匹配到指定范围内的字符。例如,可以限定用户只能输入小写英文字母。示例代码如下。

 1  var rg = /^[a-z]$/;

 2  console.log(rg.test('a'));  // 结果为:true

 3  console.log(rg.test('z'));  // 结果为:true

上述代码中,第1行的rg表达式,表示匹配26个小写英文字母(范围a到z)中的任意一个字母,匹配成功返回ture,否则返回false。

点击此处
隐藏目录