Chuỗi con excel sau ký tự

Biểu thức chính quy là các mẫu được sử dụng để so khớp các tổ hợp ký tự trong chuỗi. Trong JavaScript, biểu thức chính quy cũng là đối tượng. Các mẫu này được sử dụng với các phương pháp

const re = new RegExp('ab+c');
8 và
const re = new RegExp('ab+c');
9 của
function escapeRegExp(string) {
  return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string
}
0, và với các phương pháp
function escapeRegExp(string) {
  return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string
}
1,
function escapeRegExp(string) {
  return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string
}
2,
function escapeRegExp(string) {
  return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string
}
3,
function escapeRegExp(string) {
  return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string
}
4, ________2__5 và
function escapeRegExp(string) {
  return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string
}
6 của
function escapeRegExp(string) {
  return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string
}
7. Chương này mô tả các biểu thức chính quy JavaScript

Show

    Bạn xây dựng một biểu thức chính quy theo một trong hai cách

    • Sử dụng một biểu thức chính quy, bao gồm một mẫu được đặt giữa các dấu gạch chéo, như sau

      const re = /ab+c/;
      

      Các ký tự biểu thức chính quy cung cấp khả năng biên dịch biểu thức chính quy khi tập lệnh được tải. Nếu biểu thức chính quy không đổi, việc sử dụng biểu thức này có thể cải thiện hiệu suất
    • Hoặc gọi hàm khởi tạo của đối tượng
      function escapeRegExp(string) {
        return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string
      }
      
      0 như sau

      const re = new RegExp('ab+c');
      

      Việc sử dụng hàm tạo cung cấp khả năng biên dịch thời gian chạy của biểu thức chính quy. Sử dụng hàm tạo khi bạn biết mẫu biểu thức chính quy sẽ thay đổi hoặc bạn không biết mẫu và đang lấy nó từ một nguồn khác, chẳng hạn như đầu vào của người dùng

    Mẫu biểu thức chính quy bao gồm các ký tự đơn giản, chẳng hạn như

    function escapeRegExp(string) {
      return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string
    }
    
    9 hoặc kết hợp các ký tự đơn giản và đặc biệt, chẳng hạn như
    const myRe = /d(b+)d/g;
    const myArray = myRe.exec('cdbbdbsbz');
    
    0 hoặc
    const myRe = /d(b+)d/g;
    const myArray = myRe.exec('cdbbdbsbz');
    
    1. Ví dụ cuối cùng bao gồm dấu ngoặc đơn, được sử dụng làm thiết bị bộ nhớ. Khớp được thực hiện với phần này của mẫu được ghi nhớ để sử dụng sau này, như được mô tả trong

    Ghi chú. Nếu bạn đã quen thuộc với các dạng của biểu thức chính quy, bạn cũng có thể đọc cheat sheet để tra cứu nhanh một mẫu/cấu trúc cụ thể

    Các mẫu đơn giản được tạo từ các ký tự mà bạn muốn tìm đối sánh trực tiếp. Ví dụ: mẫu

    function escapeRegExp(string) {
      return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string
    }
    
    9 khớp với các tổ hợp ký tự trong chuỗi chỉ khi chuỗi chính xác
    const myRe = /d(b+)d/g;
    const myArray = myRe.exec('cdbbdbsbz');
    
    3 xảy ra (tất cả các ký tự cùng nhau và theo thứ tự đó). Một trận đấu như vậy sẽ thành công trong chuỗi
    const myRe = /d(b+)d/g;
    const myArray = myRe.exec('cdbbdbsbz');
    
    4 và
    const myRe = /d(b+)d/g;
    const myArray = myRe.exec('cdbbdbsbz');
    
    5. Trong cả hai trường hợp, kết quả khớp với chuỗi con
    const myRe = /d(b+)d/g;
    const myArray = myRe.exec('cdbbdbsbz');
    
    3. Không có sự trùng khớp nào trong chuỗi
    const myRe = /d(b+)d/g;
    const myArray = myRe.exec('cdbbdbsbz');
    
    7 bởi vì trong khi nó chứa chuỗi con
    const myRe = /d(b+)d/g;
    const myArray = myRe.exec('cdbbdbsbz');
    
    8, thì nó không chứa chính xác chuỗi con
    const myRe = /d(b+)d/g;
    const myArray = myRe.exec('cdbbdbsbz');
    
    3

    Khi tìm kiếm đối sánh yêu cầu nhiều thứ hơn là đối sánh trực tiếp, chẳng hạn như tìm một hoặc nhiều chữ b hoặc tìm khoảng trắng, bạn có thể bao gồm các ký tự đặc biệt trong mẫu. Ví dụ: để khớp một

    const myArray = /d(b+)d/g.exec('cdbbdbsbz');
    // similar to 'cdbbdbsbz'.match(/d(b+)d/g); however,
    // 'cdbbdbsbz'.match(/d(b+)d/g) outputs [ "dbbd" ]
    // while /d(b+)d/g.exec('cdbbdbsbz') outputs [ 'dbbd', 'bb', index: 1, input: 'cdbbdbsbz' ]
    
    0 theo sau là số 0 hoặc nhiều hơn nữa
    const myArray = /d(b+)d/g.exec('cdbbdbsbz');
    // similar to 'cdbbdbsbz'.match(/d(b+)d/g); however,
    // 'cdbbdbsbz'.match(/d(b+)d/g) outputs [ "dbbd" ]
    // while /d(b+)d/g.exec('cdbbdbsbz') outputs [ 'dbbd', 'bb', index: 1, input: 'cdbbdbsbz' ]
    
    1 theo sau là
    const myArray = /d(b+)d/g.exec('cdbbdbsbz');
    // similar to 'cdbbdbsbz'.match(/d(b+)d/g); however,
    // 'cdbbdbsbz'.match(/d(b+)d/g) outputs [ "dbbd" ]
    // while /d(b+)d/g.exec('cdbbdbsbz') outputs [ 'dbbd', 'bb', index: 1, input: 'cdbbdbsbz' ]
    
    2, bạn sẽ sử dụng mẫu
    const myRe = /d(b+)d/g;
    const myArray = myRe.exec('cdbbdbsbz');
    
    0.
    const myArray = /d(b+)d/g.exec('cdbbdbsbz');
    // similar to 'cdbbdbsbz'.match(/d(b+)d/g); however,
    // 'cdbbdbsbz'.match(/d(b+)d/g) outputs [ "dbbd" ]
    // while /d(b+)d/g.exec('cdbbdbsbz') outputs [ 'dbbd', 'bb', index: 1, input: 'cdbbdbsbz' ]
    
    4 sau
    const myArray = /d(b+)d/g.exec('cdbbdbsbz');
    // similar to 'cdbbdbsbz'.match(/d(b+)d/g); however,
    // 'cdbbdbsbz'.match(/d(b+)d/g) outputs [ "dbbd" ]
    // while /d(b+)d/g.exec('cdbbdbsbz') outputs [ 'dbbd', 'bb', index: 1, input: 'cdbbdbsbz' ]
    
    1 có nghĩa là "0 hoặc nhiều lần xuất hiện của mục trước đó. " Trong chuỗi
    const myArray = /d(b+)d/g.exec('cdbbdbsbz');
    // similar to 'cdbbdbsbz'.match(/d(b+)d/g); however,
    // 'cdbbdbsbz'.match(/d(b+)d/g) outputs [ "dbbd" ]
    // while /d(b+)d/g.exec('cdbbdbsbz') outputs [ 'dbbd', 'bb', index: 1, input: 'cdbbdbsbz' ]
    
    6, mẫu này sẽ khớp với chuỗi con
    const myArray = /d(b+)d/g.exec('cdbbdbsbz');
    // similar to 'cdbbdbsbz'.match(/d(b+)d/g); however,
    // 'cdbbdbsbz'.match(/d(b+)d/g) outputs [ "dbbd" ]
    // while /d(b+)d/g.exec('cdbbdbsbz') outputs [ 'dbbd', 'bb', index: 1, input: 'cdbbdbsbz' ]
    
    7

    Các trang sau đây cung cấp danh sách các ký tự đặc biệt khác nhau phù hợp với từng danh mục, cùng với các mô tả và ví dụ

    khẳng định

    Các xác nhận bao gồm các ranh giới, biểu thị phần đầu và phần cuối của dòng và từ cũng như các mẫu khác biểu thị theo một cách nào đó rằng có thể khớp (bao gồm biểu thức nhìn về phía trước, nhìn về phía sau và biểu thức điều kiện)

    lớp nhân vật

    Phân biệt các loại ký tự. Ví dụ, phân biệt giữa các chữ cái và chữ số

    Nhóm và phản hồi

    Các nhóm nhóm nhiều mẫu thành một tổng thể và việc chụp các nhóm cung cấp thêm thông tin khớp phụ khi sử dụng mẫu biểu thức chính quy để khớp với một chuỗi. Backreferences đề cập đến một nhóm được chụp trước đó trong cùng một biểu thức chính quy

    định lượng

    Cho biết số lượng ký tự hoặc biểu thức để khớp

    Thuộc tính Unicode thoát

    Phân biệt dựa trên các thuộc tính ký tự unicode, ví dụ: chữ hoa và chữ thường, ký hiệu toán học và dấu chấm câu

    Nếu bạn muốn xem tất cả các ký tự đặc biệt có thể được sử dụng trong biểu thức chính quy trong một bảng, hãy xem phần sau

    Ký tự đặc biệt trong biểu thức chính quy. Characters / constructsCorresponding article
    const myArray = /d(b+)d/g.exec('cdbbdbsbz');
    // similar to 'cdbbdbsbz'.match(/d(b+)d/g); however,
    // 'cdbbdbsbz'.match(/d(b+)d/g) outputs [ "dbbd" ]
    // while /d(b+)d/g.exec('cdbbdbsbz') outputs [ 'dbbd', 'bb', index: 1, input: 'cdbbdbsbz' ]
    
    8,
    const myArray = /d(b+)d/g.exec('cdbbdbsbz');
    // similar to 'cdbbdbsbz'.match(/d(b+)d/g); however,
    // 'cdbbdbsbz'.match(/d(b+)d/g) outputs [ "dbbd" ]
    // while /d(b+)d/g.exec('cdbbdbsbz') outputs [ 'dbbd', 'bb', index: 1, input: 'cdbbdbsbz' ]
    
    9,
    const myRe = new RegExp('d(b+)d', 'g');
    const myArray = myRe.exec('cdbbdbsbz');
    
    0,
    const myRe = new RegExp('d(b+)d', 'g');
    const myArray = myRe.exec('cdbbdbsbz');
    
    1,
    const myRe = new RegExp('d(b+)d', 'g');
    const myArray = myRe.exec('cdbbdbsbz');
    
    2,
    const myRe = new RegExp('d(b+)d', 'g');
    const myArray = myRe.exec('cdbbdbsbz');
    
    3,
    const myRe = new RegExp('d(b+)d', 'g');
    const myArray = myRe.exec('cdbbdbsbz');
    
    4,
    const myRe = new RegExp('d(b+)d', 'g');
    const myArray = myRe.exec('cdbbdbsbz');
    
    5,
    const myRe = new RegExp('d(b+)d', 'g');
    const myArray = myRe.exec('cdbbdbsbz');
    
    6,
    const myRe = new RegExp('d(b+)d', 'g');
    const myArray = myRe.exec('cdbbdbsbz');
    
    7,
    const myRe = new RegExp('d(b+)d', 'g');
    const myArray = myRe.exec('cdbbdbsbz');
    
    8,
    const myRe = new RegExp('d(b+)d', 'g');
    const myArray = myRe.exec('cdbbdbsbz');
    
    9,
    const myRe = /d(b+)d/g;
    const myArray = myRe.exec('cdbbdbsbz');
    console.log(`The value of lastIndex is ${myRe.lastIndex}`);
    
    // "The value of lastIndex is 5"
    
    0,
    const myRe = /d(b+)d/g;
    const myArray = myRe.exec('cdbbdbsbz');
    console.log(`The value of lastIndex is ${myRe.lastIndex}`);
    
    // "The value of lastIndex is 5"
    
    1,
    const myRe = /d(b+)d/g;
    const myArray = myRe.exec('cdbbdbsbz');
    console.log(`The value of lastIndex is ${myRe.lastIndex}`);
    
    // "The value of lastIndex is 5"
    
    2,
    const myRe = /d(b+)d/g;
    const myArray = myRe.exec('cdbbdbsbz');
    console.log(`The value of lastIndex is ${myRe.lastIndex}`);
    
    // "The value of lastIndex is 5"
    
    3,
    const myRe = /d(b+)d/g;
    const myArray = myRe.exec('cdbbdbsbz');
    console.log(`The value of lastIndex is ${myRe.lastIndex}`);
    
    // "The value of lastIndex is 5"
    
    4,
    const myRe = /d(b+)d/g;
    const myArray = myRe.exec('cdbbdbsbz');
    console.log(`The value of lastIndex is ${myRe.lastIndex}`);
    
    // "The value of lastIndex is 5"
    
    5,
    const myRe = /d(b+)d/g;
    const myArray = myRe.exec('cdbbdbsbz');
    console.log(`The value of lastIndex is ${myRe.lastIndex}`);
    
    // "The value of lastIndex is 5"
    
    6,
    const myRe = /d(b+)d/g;
    const myArray = myRe.exec('cdbbdbsbz');
    console.log(`The value of lastIndex is ${myRe.lastIndex}`);
    
    // "The value of lastIndex is 5"
    
    7,
    const myRe = /d(b+)d/g;
    const myArray = myRe.exec('cdbbdbsbz');
    console.log(`The value of lastIndex is ${myRe.lastIndex}`);
    
    // "The value of lastIndex is 5"
    
    8

    lớp nhân vật

    const myRe = /d(b+)d/g;
    const myArray = myRe.exec('cdbbdbsbz');
    console.log(`The value of lastIndex is ${myRe.lastIndex}`);
    
    // "The value of lastIndex is 5"
    
    9,
    const myArray = /d(b+)d/g.exec('cdbbdbsbz');
    console.log(`The value of lastIndex is ${/d(b+)d/g.lastIndex}`);
    
    // "The value of lastIndex is 0"
    
    0,
    const myArray = /d(b+)d/g.exec('cdbbdbsbz');
    console.log(`The value of lastIndex is ${/d(b+)d/g.lastIndex}`);
    
    // "The value of lastIndex is 0"
    
    1,
    const myArray = /d(b+)d/g.exec('cdbbdbsbz');
    console.log(`The value of lastIndex is ${/d(b+)d/g.lastIndex}`);
    
    // "The value of lastIndex is 0"
    
    2,
    const myArray = /d(b+)d/g.exec('cdbbdbsbz');
    console.log(`The value of lastIndex is ${/d(b+)d/g.lastIndex}`);
    
    // "The value of lastIndex is 0"
    
    3,
    const myArray = /d(b+)d/g.exec('cdbbdbsbz');
    console.log(`The value of lastIndex is ${/d(b+)d/g.lastIndex}`);
    
    // "The value of lastIndex is 0"
    
    4,
    const myArray = /d(b+)d/g.exec('cdbbdbsbz');
    console.log(`The value of lastIndex is ${/d(b+)d/g.lastIndex}`);
    
    // "The value of lastIndex is 0"
    
    5,
    const myArray = /d(b+)d/g.exec('cdbbdbsbz');
    console.log(`The value of lastIndex is ${/d(b+)d/g.lastIndex}`);
    
    // "The value of lastIndex is 0"
    
    6

    khẳng định

    const myArray = /d(b+)d/g.exec('cdbbdbsbz');
    console.log(`The value of lastIndex is ${/d(b+)d/g.lastIndex}`);
    
    // "The value of lastIndex is 0"
    
    7,
    const myArray = /d(b+)d/g.exec('cdbbdbsbz');
    console.log(`The value of lastIndex is ${/d(b+)d/g.lastIndex}`);
    
    // "The value of lastIndex is 0"
    
    8,
    const myArray = /d(b+)d/g.exec('cdbbdbsbz');
    console.log(`The value of lastIndex is ${/d(b+)d/g.lastIndex}`);
    
    // "The value of lastIndex is 0"
    
    9,
    const re = /pattern/flags;
    
    0,
    const re = /pattern/flags;
    
    1

    Nhóm và phản hồi

    const re = /pattern/flags;
    
    2,
    const re = /pattern/flags;
    
    3,
    const re = /pattern/flags;
    
    4,
    const re = /pattern/flags;
    
    5,
    const re = /pattern/flags;
    
    6,
    const re = /pattern/flags;
    
    7

    định lượng

    const re = /pattern/flags;
    
    8,
    const re = /pattern/flags;
    
    9 Thoát tài sản Unicode

    Ghi chú. Một bảng cheat lớn hơn cũng có sẵn (chỉ tổng hợp các phần của các bài viết riêng lẻ đó)

    Nếu bạn cần sử dụng bất kỳ ký tự đặc biệt nào theo nghĩa đen (ví dụ: thực sự đang tìm kiếm

    const re = new RegExp('pattern', 'flags');
    
    0), bạn phải thoát ký tự đó bằng cách đặt dấu gạch chéo ngược trước ký tự đó. Ví dụ: để tìm kiếm
    const myArray = /d(b+)d/g.exec('cdbbdbsbz');
    // similar to 'cdbbdbsbz'.match(/d(b+)d/g); however,
    // 'cdbbdbsbz'.match(/d(b+)d/g) outputs [ "dbbd" ]
    // while /d(b+)d/g.exec('cdbbdbsbz') outputs [ 'dbbd', 'bb', index: 1, input: 'cdbbdbsbz' ]
    
    0 theo sau là
    const re = new RegExp('pattern', 'flags');
    
    0 theo sau là
    const myArray = /d(b+)d/g.exec('cdbbdbsbz');
    // similar to 'cdbbdbsbz'.match(/d(b+)d/g); however,
    // 'cdbbdbsbz'.match(/d(b+)d/g) outputs [ "dbbd" ]
    // while /d(b+)d/g.exec('cdbbdbsbz') outputs [ 'dbbd', 'bb', index: 1, input: 'cdbbdbsbz' ]
    
    1, bạn sẽ sử dụng
    const re = new RegExp('pattern', 'flags');
    
    4 — dấu gạch chéo ngược "thoát"
    const re = new RegExp('pattern', 'flags');
    
    0, biến nó thành nghĩa đen thay vì đặc biệt

    Tương tự, nếu bạn đang viết một biểu thức chính quy bằng chữ và cần khớp với dấu gạch chéo ("/"), bạn cần thoát dấu đó (nếu không, nó sẽ kết thúc mẫu). Ví dụ: để tìm kiếm chuỗi "/example/" theo sau là một hoặc nhiều ký tự chữ cái, bạn sẽ sử dụng

    const re = new RegExp('pattern', 'flags');
    
    6—dấu gạch chéo ngược trước mỗi dấu gạch chéo biến chúng thành chữ

    Để khớp với dấu gạch chéo ngược theo nghĩa đen, bạn cần thoát khỏi dấu gạch chéo ngược. Chẳng hạn, để khớp với chuỗi "C. \" trong đó "C" có thể là bất kỳ chữ cái nào, bạn sẽ sử dụng

    const re = new RegExp('pattern', 'flags');
    
    7 — dấu gạch chéo ngược đầu tiên thoát khỏi dấu gạch chéo ngược sau nó, do đó, biểu thức sẽ tìm kiếm một dấu gạch chéo ngược theo nghĩa đen

    Nếu sử dụng hàm tạo

    function escapeRegExp(string) {
      return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string
    }
    
    0 với một chuỗi ký tự, hãy nhớ rằng dấu gạch chéo ngược là một dấu gạch chéo ngược trong chuỗi ký tự, vì vậy, để sử dụng nó trong biểu thức chính quy, bạn cần thoát nó ở mức ký tự chuỗi.
    const re = new RegExp('pattern', 'flags');
    
    4 và
    const re = new RegExp('ab+c');
    
    00 tạo cùng một biểu thức, tìm kiếm "a" theo sau là chữ "*" theo sau là "b"

    Nếu chuỗi thoát không phải là một phần của mẫu của bạn, bạn có thể thêm chúng bằng cách sử dụng

    const re = new RegExp('ab+c');
    
    01

    function escapeRegExp(string) {
      return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string
    }
    

    Chữ "g" sau biểu thức chính quy là một tùy chọn hoặc cờ thực hiện tìm kiếm toàn cầu, tìm kiếm trong toàn bộ chuỗi và trả về tất cả các kết quả phù hợp. Nó được giải thích chi tiết dưới đây trong

    Tại sao điều này không được tích hợp vào JavaScript?

    Dấu ngoặc đơn xung quanh bất kỳ phần nào của mẫu biểu thức chính quy làm cho phần đó của chuỗi con phù hợp được ghi nhớ. Sau khi được ghi nhớ, chuỗi con có thể được gọi lại cho mục đích sử dụng khác. Xem để biết thêm chi tiết

    Biểu thức chính quy được sử dụng với các phương thức

    function escapeRegExp(string) {
      return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string
    }
    
    0
    const re = new RegExp('ab+c');
    
    9 và
    const re = new RegExp('ab+c');
    
    8 và với các phương thức
    function escapeRegExp(string) {
      return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string
    }
    
    7
    function escapeRegExp(string) {
      return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string
    }
    
    1,
    function escapeRegExp(string) {
      return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string
    }
    
    3,
    function escapeRegExp(string) {
      return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string
    }
    
    5 và
    function escapeRegExp(string) {
      return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string
    }
    
    6

    Phương thứcMô tả
    const re = new RegExp('ab+c');
    
    8Thực hiện tìm kiếm đối sánh trong một chuỗi. Nó trả về một mảng thông tin hoặc
    const re = new RegExp('ab+c');
    
    11 khi không khớp.
    const re = new RegExp('ab+c');
    
    9Kiểm tra sự trùng khớp trong một chuỗi. Nó trả về
    const re = new RegExp('ab+c');
    
    13 hoặc
    const re = new RegExp('ab+c');
    
    14.
    function escapeRegExp(string) {
      return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string
    }
    
    1Trả về một mảng chứa tất cả các kết quả phù hợp, bao gồm cả các nhóm bắt giữ hoặc
    const re = new RegExp('ab+c');
    
    11 nếu không tìm thấy kết quả phù hợp.
    function escapeRegExp(string) {
      return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string
    }
    
    2Trả về một iterator chứa tất cả các kết quả phù hợp, bao gồm cả các nhóm bắt giữ.
    function escapeRegExp(string) {
      return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string
    }
    
    5Kiểm tra sự trùng khớp trong một chuỗi. Nó trả về chỉ số của trận đấu, hoặc
    const re = new RegExp('ab+c');
    
    19 nếu tìm kiếm không thành công.
    function escapeRegExp(string) {
      return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string
    }
    
    3 Thực hiện tìm kiếm khớp trong một chuỗi và thay thế chuỗi con khớp bằng một chuỗi con thay thế.
    function escapeRegExp(string) {
      return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string
    }
    
    4Thực hiện tìm kiếm tất cả các kết quả phù hợp trong một chuỗi và thay thế các chuỗi con phù hợp bằng một chuỗi con thay thế.
    function escapeRegExp(string) {
      return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string
    }
    
    6Sử dụng một biểu thức chính quy hoặc một chuỗi cố định để ngắt một chuỗi thành một mảng các chuỗi con

    Khi bạn muốn biết liệu một mẫu có được tìm thấy trong một chuỗi hay không, hãy sử dụng các phương thức

    const re = new RegExp('ab+c');
    
    9 hoặc
    function escapeRegExp(string) {
      return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string
    }
    
    5; . Nếu bạn sử dụng
    const re = new RegExp('ab+c');
    
    8 hoặc
    function escapeRegExp(string) {
      return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string
    }
    
    1 và nếu khớp thành công, các phương thức này trả về một mảng và cập nhật các thuộc tính của đối tượng biểu thức chính quy được liên kết và cả đối tượng biểu thức chính quy được xác định trước,
    function escapeRegExp(string) {
      return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string
    }
    
    0. Nếu khớp không thành công, phương thức
    const re = new RegExp('ab+c');
    
    8 trả về
    const re = new RegExp('ab+c');
    
    11 (bắt buộc phải trả về
    const re = new RegExp('ab+c');
    
    14)

    Trong ví dụ sau, người dùng phải nhập số điện thoại. Khi người dùng nhấn nút "Kiểm tra", tập lệnh sẽ kiểm tra tính hợp lệ của số. Nếu số hợp lệ (khớp với chuỗi ký tự được chỉ định bởi biểu thức chính quy), tập lệnh sẽ hiển thị thông báo cảm ơn người dùng và xác nhận số. Nếu số không hợp lệ, tập lệnh sẽ thông báo cho người dùng rằng số điện thoại không hợp lệ