文章目录

  • 概念
  • 一、元字符内容
  • 二、如何使用


概念

元字符:所谓元字符就是指那些在正则表达式中具有特殊意义的专用字符,可以用来规定其前导字符(即位于元字符前面的字符)在目标对象中的出现模式。


一、元字符内容

  1. \s匹配任何空白字符,包括空格、制表符、换页符等等。
  2. \S匹配任何非空白字符。
  3. \t匹配一个制表符。
  4. \d匹配一个数字字符。
  5. \D匹配一个非数字字符。
  6. \w匹配字母、数字、下划线。
  7. \W匹配非字母、数字、下划线。
  8. 点(.)表示非换行的任意字符
  9. 斜线(\)表示转义字符,把没有意义的内容转成有意义的内容,把有意义的内容转成没有意义的内容

二、如何使用

1.\s表示一个空格   只要有空格就是true不管空格在什么位置

const reg1 = /\s/;
console.log(reg1.test('abcd')); //false
console.log(reg1.test('abcd ')); //true
console.log(reg1.test('ab cd')); //true
console.log(reg1.test(' ab cd')); //true

2. \S匹配任何非空白字符。  如果内部只有空格或者tab键或者没有任何内容都是false以外,其他都为true。

const reg2 = /\S/;
console.log(reg2.test(' ')); //''内是一个空格 false
console.log(reg2.test('1234 ')); //true
console.log(reg2.test('		')); //''内是两个tab键  false
console.log(reg2.test('  a  a  b c  ')); //true
console.log(reg2.test('')); //false

3.\t表示一个制表符,一个制表符就是制表符,不是多个空格;只要有tab键和'\t'都为true 

const reg3 = /\t/;
console.log(reg3.test('\t')); //true
console.log(reg3.test('a	')); //tab键  true
console.log(reg3.test(' ')); //空格键  false
console.log(reg3.test('	123@_')); //true

4.\d表示一个数字   只要有数字就为true 

const reg4 = /\d/;
console.log(reg4.test('123456')); //true
console.log(reg4.test('123@456')); //true
console.log(reg4.test('tttt')); //false
console.log(reg4.test('	')); //tab键  false

5.\D表示一个非数字  只有纯数字时为false,其余的都为true

const reg5 = /\D/;
console.log(reg5.test('t456tt  ttt')) //true
console.log(reg5.test('tttt6tt    ')) //true
console.log(reg5.test('6666')) //false

6.\w表示一个数字,字母,下划线   只要有三个的其中一个就为true

const reg6 = /\w/;
console.log(reg6.test('15632')); //true
console.log(reg6.test('2	_y')); //true
console.log(reg6.test('@@@@2')); //true
console.log(reg6.test('@@_@@')); //true
console.log(reg6.test('@@a@@_')); //true
console.log(reg6.test('$$$$')); //false

7.\W表示数字,字母,下划线以外的字符  只要有三者其中一个就为false

const reg7 = /\W/;
console.log(reg7.test('15632')); //false
console.log(reg7.test('  ')); //空格  true
console.log(reg7.test('@@@@')); //true
console.log(reg7.test('123__aa')); //false
console.log(reg7.test('@@a@@_')); //true

8.点(.)表示非换行的任意字符

const reg8 = /./;
console.log(reg8.test('\n')); //false
console.log(reg8.test('  ')); //true

9.斜线(\)表示转义字符,把没有意义的内容转成有意义的内容,把有意义的内容转成没有意义的内容。

// s表示你的字符串中需要有一个s
const aaa = /o/;
console.log(aaa.test('gggggggo')); //true
console.log(aaa.test('ggggggg'));  //false
//表示你的字符串中需要有一个空格字符
const bbb = /\s/;
console.log(bbb.test('hhh hhh'));//true
console.log(bbb.test('hhhhhh')); //false
//表示你的字符串里面有一个 点 文本内容
const reg9 = /\./;
console.log(reg9.test('absn.fj'));//true
console.log(reg9.test('absnfj')); //false
//表示你的字符串中需要有一个\\内容
const reg10 = /\\/;
console.log(reg10.test('677688\\99'));//true
console.log(reg10.test('67768899')); //false