需求:检查一个字符串中是否有 .

  • . 表示任意字符

    1. var reg = /./;
    2. console.log(reg.test("abc")); // true
  • \ 表示转义字符

    var reg = /\./;
    console.log(reg.test("."));  // true
    
  • 使用构造函数时,由于参数是一个字符串,而 \ 是字符串中转义字符,如果要使用 \ 则需要使用 \ 来代替

    var reg = new RegExp("\.");
    console.log(reg.test("\\"));  // true
    

    \w

  • 任意字母、数字、 [A-z0-9]

    var reg = /\w/;
    console.log(reg.test("abc123_"));  // true
    console.log(reg.test("你好"));  // false
    

    \W

  • 除了字母、数字、_ [^A-z0-9]

    var reg = /\W/;
    console.log(reg.test("+-*/"));  // true
    console.log(reg.test("abc123_"));  // false
    

    \d

  • 任意数字 [0-9] ```javascript var reg = /\d/; console.log(reg.test(“123”)); // true

console.log(reg.test(“abc”)); // false

<a name="ubyPT"></a>
### `\D` 

- **除了数字  [^0-9]**
```javascript
var reg = /\D/;
console.log(reg.test("abc"));  // true

console.log(reg.test("123"));  // false

\s

  • 空格 ```javascript var reg = /\s/; console.log(reg.test(“ “)); // true

console.log(reg.test(“abc”)); // false

<a name="IQeLW"></a>
### `\S`

- **除了空格**
```javascript
var reg = /\S/;
console.log(reg.test("abc"));  // true

console.log(reg.test(" "));  // false

\b

  • 单词边界 ```javascript var reg = /\bhello\b/; console.log(reg.test(“hello world”)); // true

console.log(reg.test(“helloworld”)); // false

<a name="Pjnbh"></a>
### `\B` 

- 除了单词边界
```javascript
var reg = /\B/;
console.log(reg.test("hello world"));  // true

去除字符串前后的空格

var str = "     h  ello     ";
var result = str.replace(/^\s* | \s*$/g,"");
console.log(result);  // h  ello

*表示 0个或多个